我必须从图库中选择图像或从相机中捕获图像,我想剪裁我已经拍摄的图像,
所以,我使用以下代码来调用crop intent,
Intent cropIntent = new Intent("com.android.camera.action.CROP");
//indicate image type and Uri
cropIntent.setDataAndType(imageUri, "image/*");
//set crop properties
cropIntent.putExtra("crop", "true");
//retrieve data on return
cropIntent.putExtra("return-data", true);
try {
startActivityForResult(cropIntent, REQUEST_CODE_FOR_CROP_DONE);
} catch (ActivityNotFoundException actionNotFoundException) {
Log.e(TAG, actionNotFoundException.getMessage(), actionNotFoundException);
Toast.makeText(fragment.getActivity(), fragment.getResources().getString(R.string.crop_not_available), Toast.LENGTH_SHORT).show();
}
我正在使用Nexus 6p设备,似乎只在这台设备上我遇到了这个问题。
这给了我Toast的消息,说不能裁剪50 x 50以下的图像。
我可以知道我错过了什么吗?
答案 0 :(得分:1)
我不知道你是否可以通过传递作物意图来裁剪图像!!
错误表示U正在选择宽度x高度小于50x50
的图像尝试选择较大的图片以进行裁剪。
PS:尝试使用此库进行裁剪Android-Image-Cropper
答案 1 :(得分:1)
此com.android.camera.action.CROP
意图不适用于所有设备,您应该使用库进行裁剪