- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试从媒体库中裁剪图像。我可以访问图像,启动默认裁剪工具,甚至可以保存裁剪后的图像结果。
但是,如果裁剪成功,我使用的 Intent 将不会返回任何结果。
我的主要方法:
// Crop photo intent.
Intent intent = new Intent("com.android.camera.action.CROP", null);
intent.setData(uri);
intent.putExtra("outputX", outputX);
intent.putExtra("outputY", outputY);
intent.putExtra("aspectX", aspectX);
intent.putExtra("aspectY", aspectY);
intent.putExtra("scale", scale);
intent.putExtra("return-data", true);
intent.putExtra(MediaStore.EXTRA_OUTPUT, createTempCroppedImageFile());
intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString());
// Publish intent to crop picture.
activity.startActivityForResult(intent, activity.CROP_PHOTO_REQUEST_CODE);
– OnActivityResult() 方法–
// Photo crop activity.
if (requestCode == CROP_PHOTO_REQUEST_CODE) {
if (resultCode == RESULT_OK) {
Log.d(TAG, "user cropped a photo");
signupScreen.setImage(new PhotoTool(this).getTempCroppedImageFileLocation());
} else
Log.d(TAG, "user cancelled photo crop");
}
如果我取消剪裁 Activity ,我会成功收到“用户取消照片剪裁”消息。但是,如果我裁剪图像,新裁剪图像将出现在目标目录中,但永远不会调用 OnActivityResult() 函数。给了什么?
查看 LogCat,我发现每次保存裁剪后的图像时,“JavaBinder”都会提示“Binder Transaction 失败”。我知道这与内存有某种关系,但裁剪后的文件大小只有 24KB。
最佳答案
找到这个issue的问题。不幸的是,这是一个 Android 限制。
参见 Android cropper cannot go beyond 256?
我已将裁剪图像的输出设置为 400x400。不幸的是,Android 的默认裁剪器只能处理 256x256。这非常令人沮丧,尤其是当没有关于限制的文档时。
关于android - 为什么 Android crop intent 不返回 ActivityResult?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9345960/
如何使用下面的代码调整图像大小?代码获取图像,但我不知道如何调整它的大小。 @Override protected void onActivityResult(int re
我正在尝试构建一个相机应用。 这是 MainActivity 的代码: public class MainActivity extends Activity { public static i
我正在使用下面介绍的方法来验证我正在测试的 Activity 是否启动了另一个 Activity。 Instrumentation.addMonitor (IntentFilter filter, I
我正在尝试开发 Android 应用程序,但其中的一部分遇到了问题。我正在尝试创建一个带有按钮的 Activity ,当单击该按钮时,它会将您发送到另一个 Activity ,您可以在其中编写名称,该
Cordova 是否有自动将 onActivityResult 传递给它的 CordovaPlugin 类的方法? 这是我当前的文件,手动执行: package com.myapp; import a
docs在测试 Fragments 时非常好,但是没有关于如何测试使用 ActivityResult 的 Activity 的信息。 我们应该如何在 Activity 测试中重写 activityRe
我正在尝试使用此处所述的 ActivityResult API ActivityResult APIs 但它给出了 Unresolved reference 错误。 我正在使用以下依赖项 api 'a
所以我想通过重写 onActivityResult 从图库加载图像。将 Intent 数据发送到另一个 Activity 的有效方法是什么? 当前使用此代码来获取图像路径,然后再将其发送到其他 Act
各位程序员大家好, 我的 Android 应用程序遇到一些问题,目前 正在努力。为此,我只需提及我有两个 Activity (一个称为 MainActivity.class,第二个称为 FilterA
我有以下要求: Activity A ---> Activity B ---> 打开图库应用 传统上,我使用 TaskStackBuilder 启动嵌套 Activity .所以我会做这样的事情:
你好。我想将 facebook sdk 添加到我的应用程序中以进行授权/登录。我注册我的应用程序,测试 - 所有工作,直到我添加权限(用于电子邮件),现在我 cath NullPointerExcep
我正在尝试从媒体库中裁剪图像。我可以访问图像,启动默认裁剪工具,甚至可以保存裁剪后的图像结果。 但是,如果裁剪成功,我使用的 Intent 将不会返回任何结果。 我的主要方法: // Crop pho
我想播放从 MediaStore.Audio 中选择的歌曲。我得到了 URi 并在烘烤后进行了测试。但它没有使用媒体播放器播放。 Intent intent = new Intent(Intent.
我打开一个捕获图像的 Intent ,我调用 AsyncTask 的 OnActivityResult 开始对图像进行一些处理。问题是我想先加载 mainActivity,然后启动 AsyncTask
因此,我尝试使用新的 registerForActivityResult() 方法获得许可,并通过 .launch() 按钮单击来请求它,它似乎没有打开任何窗口来请求它。 我总是在 registerF
UPDATE 我有一台运行 8.0.0 T-Mobile 的三星 Galaxy S8+,它运行良好 8.0.0 我的三星 Galaxy S9+ 运行 8.0.0 Verizon,每次都因非法参数而失败
运行 Android Studio/分析/检查代码时...我收到 50 多条相同的错误消息“Android/Lint/Correctness Error在这行代码中将 Fragment 版本升级到至少
我是一名优秀的程序员,十分优秀!