相机:
private String path=Environment.getExternalStorageDirectory()+"/aaaa";
先获取路径:
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(path)));
startActivityForResult(intent,10000);
进行判断:
if(requestCode==10000 && resultCode==RESULT_OK){
Intent intent = new Intent("com.android.camera.action.CROP");
intent.setDataAndType(Uri.fromFile(new File(path)), "image/*");
// 下面这个crop = true是设置在开启的Intent中设置显示的VIEW可裁剪
intent.putExtra("crop", "true");
// aspectX aspectY 是宽高的比例,这里设置的是正方形(长宽比为1:1)
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
// outputX outputY 是裁剪图片宽高
intent.putExtra("outputX", 200);
intent.putExtra("outputY", 200);
intent.putExtra("return-data", false);
startActivityForResult(intent,888);
}
//赋值
if(requestCode==888 && resultCode==RESULT_OK){
Bitmap aa= data.getParcelableExtra("data");
im.setImageBitmap(aa);
}
相册:
先获取路径:
Intent in = new Intent(Intent.ACTION_PICK);
in.setType("image/*");
startActivityForResult(in,9999);
//进行判断
if(requestCode==9999 && resultCode==RESULT_OK){ Intent in=new Intent("com.android.camera.action.CROP"); Uri uri = data.getData(); in.setDataAndType(uri, "image/*"); in.putExtra("CROP", true); in.putExtra("aspectX", 1); in.putExtra("aspectY", 1); in.putExtra("outputX", 200); in.putExtra("outputX", 200); in.putExtra("return-data", true); startActivityForResult(in, 777); } //赋值 if(requestCode==777 && resultCode==RESULT_OK){ Bitmap bit=data.getParcelableExtra("data"); im.setImageBitmap(bit); }