我在Android Studio中创建图像过滤器应用程序。首先,用户从图库中选择一个图像,并将它在imageview中显示。然后用户点击编辑按钮,该图像显示在下一个活动的图像视图中,我们可以添加过滤器...它可以在低分辨率图像下正常工作,但是当我选择任何高分辨率图像时,它会显示在第一个图像视图中,但是当我点击编辑按钮或者应用程序崩溃或我选择的最后一个图像显示。我搜索了解决方案,但无法找到它。如果有人知道如何解决这个问题,请帮我将高分辨率图像从一项活动传递到其他
0
A
回答
0
可以通过意图传递的数据的大小是有限制的。限制是roughly 500Kb - 您的高分辨率照片将比这更大。
考虑将图像保存到设备上的文件位置,将URI传递给接收活动并在其中加载它。
0
首先粘贴崩溃日志。 然后,而不是传递图像本身只是传递图像路径。 或只需在一项活动中添加编辑工具和主视图,并使编辑工具不可见!不过你也可以使用片段。
与putExtra
0
使用发送URI路径:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent .setClass(ThisActivity.this, NewActivity.class);
intent .putExtra("KEY", Uri);
startActivity(intent);
你只需要添加图片的路径。
0
最好将图像保存在存储器中并传递位置的Uri而不是传递图像。
存储保存图像: -
public static Uri saveImageOnExternalStorage(Bitmap capturedBitmap, String imageId) {
if (null != capturedBitmap) {
OutputStream fOutputStream;
String path = Environment.getExternalStorageDirectory().toString();
File file = new File(path + "temp", mediaId + ".png");
file.delete();
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
try {
if (file.createNewFile()) {
fOutputStream = new FileOutputStream(file);
capturedBitmap.compress(COMPRESS_FORMAT, 100, fOutputStream);
fOutputStream.flush();
fOutputStream.close();
return Uri.fromFile(file); // return saved image path on external storage
}
} catch (FileNotFoundException e) {
Log.e(TAG,e.getMessage());
return null;
} catch (IOException e) {
e.printStackTrace();
Log.e(TAG,e.getMessage());
}
}
return null;
}
现在相同的URI,你可以在接下来的活动意图通过: -
Intent intent = new Intent(CurrentActivity.this, LaunchActivity.class);
intent .putExtra("image_key", Uri);
startActivity(intent);
相关问题
- 1. 将图像从一项活动传递到其他活动
- 2. 从一个活动传递图像的其他活动
- 3. 将缓存图像从一项活动传递到另一项活动
- 4. 将图像从一个视图传递到其他图像
- 5. iphone 4高分辨率启动图像
- 6. 从JPanel获取高分辨率图像
- 7. 产生从高分辨率图像
- 8. 如何将高分辨率图像转换为低分辨率图像?
- 9. 将CharSequenceArray传递到其他活动
- 10. 从包含其他视图的UIView导出高分辨率图像
- 11. 如何将图像数据从一项活动传递给另一项活动?
- 12. 将arraylist与namevalue对从一项活动传递给其他活动?
- 13. 分享高分辨率图像
- 14. 同时支持高分辨率和低分辨率图像
- 15. HTML:在低分辨率下渲染高分辨率图像
- 16. 如何将图像从一项活动发送给其他人?
- 17. 如何将图像从活动发送到其他活动?
- 18. 将位图图像从一个活动传递到另一个活动
- 19. Android Fedor的Lazy Load将图像传递给其他活动
- 20. 使用jQuery切换高分辨率图像和低分辨率图像
- 21. 捕获图像并将其传输到其他活动
- 22. 将图像从一个活动传递到另一个在android
- 23. Chrome将高分辨率图像呈现为非常低的分辨率?
- 24. 如何在MATLAB中将低分辨率图像转换为高分辨率?
- 25. 从一个活动传递一个树状图中其他
- 26. 处理高分辨率图像
- 27. OpenLayers3和高分辨率图像(XYZ源)
- 28. 高档2D低分辨率图像
- 29. iOS - 查看高分辨率图像
- 30. 高分辨率图像快照,在Java