1、先说下问题吧,调用安卓系统原生的裁剪图片,一切操作都没问题,也没报错,但却点了没反应。换了测试机试试,有的成功有的没成功,搜了半天有人是代码问题,有人说是手机厂商问题。。。后来解决了,是一些低端机性能问题,保存时的图片不能设置太大,调小点就行了
2、demo
public void startPhotoZoom(Uri uri) {
Intent intent = new Intent("com.android.camera.action.CROP");
intent.setDataAndType(uri, "image/*");
intent.putExtra("crop", "true");
//裁剪框大小
intent.putExtra("aspectX", 87);
intent.putExtra("aspectY", 56);
//保存图片的大小
intent.putExtra("outputX", 87 * photoScale);
intent.putExtra("outputY", 56 * photoScale);
intent.putExtra("return-data", true);
startActivityForResult(intent, ZOOMPHOTO);
}
在onActivityResult中获取图片
if (requestCode == ZOOMPHOTO && resultCode == RESULT_OK) {//截图
Bundle extras = data.getExtras();
if (extras != null) {
photoReference = new SoftReference<>((Bitmap) (extras.getParcelable("data")));
ivfront.setImageBitmap(photoReference.get());
}