相機:
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); }