如何在图库中打开图片
Posted
技术标签:
【中文标题】如何在图库中打开图片【英文标题】:How to open a picture in gallery 【发布时间】:2016-05-05 23:22:07 【问题描述】:我想在画廊中打开一张图片。图库路径为 root + "/saved_images",其名称为 fname。它打开画廊,我可以选择那张照片,但我想直接打开那张照片。
String root = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).toString();
String fname = "Image-" + formattedDate + ".jpg";
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse(root + "/saved_images"+fname), "image/*");
startActivity(intent);
【问题讨论】:
您有读取外部存储的权限吗? developer.android.com/reference/android/… 【参考方案1】:您需要将 file:// 添加到路径中,如下所示: intent.setDataAndType(Uri.parse("file://" + root + "/saved_images/"+fname), "image/*");
【讨论】:
【参考方案2】:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).toString()
以"/storage/emulated/0/Pictures"
的形式返回给你一些东西。
为了有一个有效的Uri
,它只是在你的文件路径前面错过了"file://"
。
此外,如果"saved_images"
是一个目录,则在目录名和文件名之间缺少/
。
一起,
intent.setDataAndType(Uri.parse("file://" + root + "/saved_images/" + fname), "image/*");
应该做的工作。
【讨论】:
以上是关于如何在图库中打开图片的主要内容,如果未能解决你的问题,请参考以下文章