我发现很多人都在问如何裁剪图片,但是有没有一种通过意图启动编辑图片活动的方法。我尝试使用
com.android.camera.action.EDIT
,但它不起作用。我的目标是当我点击一个按钮时,启动编辑图片的活动,就像下面图片中的那个一样:
com.android.camera.action.EDIT
,但它不起作用。我的目标是当我点击一个按钮时,启动编辑图片的活动,就像下面图片中的那个一样:
Intent editIntent = new Intent(Intent.ACTION_EDIT);
editIntent.setDataAndType(uri, "image/*");
editIntent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
startActivity(Intent.createChooser(editIntent, null));
Intent intent = new Intent("com.android.camera.action.CROP");
intent.setDataAndType(yourimageuri, "image/*");
intent.putExtra("crop", "true");
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
intent.putExtra("outputX", 640);
intent.putExtra("outputY", 640);
intent.putExtra("scale", true);
intent.putExtra(MediaStore.EXTRA_OUTPUT, outPath);
intent.putExtra("return-data", false);
intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString());
intent.putExtra("noFaceDetection", true);
startActivityForResult(intent, CAMERA_CROP_RESULT);
Intent intent = new Intent(Intent.ACTION_EDIT)
。 - John61590
startActivityForResult()
,那么图片编辑器会有三种可能的结果。用户要么编辑了图像并且resultCode是Activity.RESULT_OK
,要么用户没有进行任何编辑并点击了Done
或Save
(取决于编辑器),这将返回一个resultCode为Activity.RESULT_CANCELED
,或者用户按下后退按钮,这将返回一个resultCode为Activity.RESULT_CANCELED
。为什么最后两个选项返回相同的resultCode值?你如何区分这两个选项? - Etienne LawlorActivity.RESULT_OK
。你是如何做到的?在调用意图时是否还应设置其他参数? - Yusril Maulidan Raji