我有一个问题:需要用相机拍照,然后显示屏幕,可能裁剪拍摄的照片。我添加了这样的功能:
protected void callCropPhoto(Uri uri) {
try {
Intent intent = new Intent("com.android.camera.action.CROP");
intent.setDataAndType(uri, "image/*");
intent.putExtra("crop", "true");
intent.putExtra("aspectX", avatar.getWidth());
intent.putExtra("aspectY", avatar.getHeight());
intent.putExtra("outputX", avatar.getWidth());
intent.putExtra("outputY", avatar.getHeight());
intent.putExtra("return-data", true);
startActivityForResult(intent, CROP_PHOTO_REQUEST_CODE);
} catch (Exception ex) {
// Some devices can't support image cropping.
}
}
当我从带照片的相机获得结果时,我将这个功能称为临时uri拍照。通常在调用onActivityResult后我得到RESULT_OK和数据 - 一切正常。但是在横向模式的一个设备(Android版本2.3.4)上我得到了RESULT_CANCELED并且没有出现裁剪的屏幕。有什么问题?