【发布时间】:2018-02-07 13:00:45
【问题描述】:
在从图库中选择图像后,我正在尝试使用意图裁剪图像。这是我的sn-p代码
private void showFileChooser() {
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
//******code for crop image
intent.putExtra("crop", "true");
intent.putExtra("aspectX", 0);
intent.putExtra("aspectY", 0);
intent.putExtra("return-data", true);
startActivityForResult(Intent.createChooser(intent, "Select Picture"), PICK_IMAGE_REQUEST);
}
这里我用 PICK_IMAGE_REQUEST 意图句柄调用上面的 sn-p
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK && data != null && data.getData() != null) {
try {
Uri filePath = data.getData();
可能有什么问题,因为我在裁剪后使用了相同的意图,即 PICK_IMAGE_REQUEST
【问题讨论】:
-
有什么问题?什么不工作?
-
您是否选择了图像,但它返回完整图像而不是打开裁剪屏幕?
-
你是对的,但是在裁剪后它将完整图像设置为 imageView 而不是 Eduardo Herzer 的裁剪版本
-
嗯...那么 CommonsWare 的答案是正确的。裁剪图像没有本机支持或记录的附加功能。两个选项:1)您应该使用答案中指出的库; 2)如果不是必需的,您可以检查设备是否支持裁剪操作:如果不支持,则使用完整图像;如果是,请使用裁剪意图(stackoverflow.com/a/26358351/2174489 和 stackoverflow.com/a/39633047/2174489 在这种情况下应该会有所帮助)
标签: android image android-intent