资源简介

Android设置头像小案例,可以拍照也可以从本地选择,支持大图的裁剪,效果清晰,很不错哦!借鉴别人的例子:http://06peng.com/archives/192

资源截图

代码片段和文件信息

package com.kira.photocrop;

import java.io.File;
import java.io.FileNotFoundException;
import com.kira.photocrop.R;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

public class MainActivity extends Activity {

private ImageView imageView;
private Button clickBtnLocal;
private Button clickBtnCamera;

private Uri photoUri;

private final int PIC_FROM_CAMERA = 1;
private final int PIC_FROM_LOCALPHOTO = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

imageView = (ImageView) findViewById(R.id.image);
clickBtnLocal = (Button) findViewById(R.id.click_local);
clickBtnCamera = (Button) findViewById(R.id.click_camera);

//本地选择
clickBtnLocal.setonclickListener(new View.onclickListener() 
{
@Override
public void onclick(View v) 
{
doHandlerPhoto(PIC_FROM_LOCALPHOTO);// 从相册中去获取
}
});

//拍照
clickBtnCamera.setonclickListener(new View.onclickListener()
{
@Override
public void onclick(View v) 
{
doHandlerPhoto(PIC_FROM_CAMERA);// 用户点击了从照相机获取
}
});
}

/**
 * 根据不同方式选择图片设置ImageView
 * @param type 0-本地相册选择,非0为拍照
 */
private void doHandlerPhoto(int type)
{
try
{
//保存裁剪后的图片文件
File pictureFileDir = new File(Environment.getExternalStorageDirectory() “/upload“);
if (!pictureFileDir.exists()) {
pictureFileDir.mkdirs();
}
File picFile = new File(pictureFileDir “upload.jpeg“);
if (!picFile.exists()) {
picFile.createNewFile();
}
photoUri = Uri.fromFile(picFile);

if (type==PIC_FROM_LOCALPHOTO)
{
Intent intent = getCropImageIntent();
startActivityForResult(intent PIC_FROM_LOCALPHOTO);
}else
{
Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT photoUri);
startActivityForResult(cameraIntent PIC_FROM_CAMERA);
}

} catch (Exception e)
{
Log.i(“HandlerPicError“ “处理图片出现错误“);
}
}

/**
 * 调用图片剪辑程序
 */
public Intent getCropImageIntent() {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT null);
intent.setType(“image/*“);
setIntentParams(intent);
return intent;
}

/**
 * 启动裁剪
 */
private void cropImageUriByTakePhoto() {
Intent intent = new Intent(“com.android.camera.action.CROP“);
intent.setDataAndType(photoUri “image/*“);
setIntentParams(intent);
startActivityForResult(intent PIC_FROM_LOCALPHOTO);
}

/**
 * 设置公用参数
 */
private void setIntentParams(Intent intent)
{
intent.putExtra(“crop“ “true“);
intent

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        475  2014-06-11 17:40  HeadImageSet\.classpath

     文件        848  2014-06-11 17:30  HeadImageSet\.project

     文件        953  2014-06-11 17:35  HeadImageSet\AndroidManifest.xml

     文件      55026  2012-12-25 15:12  HeadImageSet\ic_launcher-web.png

     文件     385685  2012-12-25 15:12  HeadImageSet\libs\android-support-v4.jar

     文件        781  2012-12-25 15:12  HeadImageSet\proguard-project.txt

     文件        563  2014-06-11 17:40  HeadImageSet\project.properties

     文件       7721  2012-12-25 15:12  HeadImageSet\res\drawable-hdpi\ic_launcher.png

     文件       2434  2012-12-25 15:12  HeadImageSet\res\drawable-ldpi\ic_launcher.png

     文件       3859  2012-12-25 15:12  HeadImageSet\res\drawable-mdpi\ic_launcher.png

     文件      12619  2012-12-25 15:12  HeadImageSet\res\drawable-xhdpi\ic_launcher.png

     文件       1237  2014-06-11 16:53  HeadImageSet\res\layout\activity_main.xml

     文件        257  2012-12-25 15:12  HeadImageSet\res\menu\activity_main.xml

     文件        344  2014-06-11 16:52  HeadImageSet\res\values\strings.xml

     文件        695  2012-12-25 15:12  HeadImageSet\res\values\styles.xml

     文件        332  2012-12-25 15:12  HeadImageSet\res\values-v11\styles.xml

     文件        389  2012-12-25 15:12  HeadImageSet\res\values-v14\styles.xml

     文件       4419  2014-06-11 17:38  HeadImageSet\src\com\kira\photocrop\MainActivity.java

     目录          0  2014-06-11 17:41  HeadImageSet\src\com\kira\photocrop

     目录          0  2014-06-11 17:41  HeadImageSet\src\com\kira

     目录          0  2014-06-11 17:41  HeadImageSet\res\drawable-hdpi

     目录          0  2014-06-11 17:41  HeadImageSet\res\drawable-ldpi

     目录          0  2014-06-11 17:41  HeadImageSet\res\drawable-mdpi

     目录          0  2014-06-11 17:41  HeadImageSet\res\drawable-xhdpi

     目录          0  2014-06-11 17:41  HeadImageSet\res\layout

     目录          0  2014-06-11 17:41  HeadImageSet\res\menu

     目录          0  2014-06-11 17:41  HeadImageSet\res\values

     目录          0  2014-06-11 17:41  HeadImageSet\res\values-v11

     目录          0  2014-06-11 17:41  HeadImageSet\res\values-v14

     目录          0  2014-06-11 17:41  HeadImageSet\src\com

............此处省略8个文件信息

评论

共有 条评论