Str*_*alo 0 android android-intent
我试图通过以下方式使用intent从特定文件夹中选择一个图像:
private void selectPicture(){
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
Uri uri = Uri.parse(Environment.getExternalStorageDirectory().getPath() + "/Pictures/");
intent.setDataAndType(uri, "image/*");
startActivityForResult(intent, 1);
}
Run Code Online (Sandbox Code Playgroud)
图像选择器正确启动.但是,我看到所有图像(包括来自我指定目录的图像和来自手机上其他位置的图像)而不是仅来自指定目录的图像.
我很感激有关如何使其发挥作用的任何提示.
我将应用程序的图像移动到Pictures目录只是因为我无法在应用程序的私有externalFilesDir()中显示这些图像.如果您知道如何在应用程序的外部文件目录中使用此功能来处理图像,我也非常感谢.
谢谢!
ACTION_GET_CONTENT从来没有被设计为使用a Uri,并且当然没有记录只允许用户选择"仅来自指定目录的那些".引用文档ACTION_GET_CONTENT:
请注意,intent中没有提供URI,因为对返回的数据最初来自何处没有限制.
欢迎您创建自己的内容浏览UI,将用户限制在特定目录中,也许MediaStore用于查找允许用户选择的相关媒体.
此外,在Android 4.4及更高版本中,您可以使用存储访问框架来允许用户选择内容.可能有一个流程允许您以编程方式"选择"目录,然后使用该流程作为系统的基础,以允许用户选择该目录中的内容.但是,我还没有看到这样做 - 通常,用户可以从所有可用存储提供程序的根目录开始.
| 归档时间: |
|
| 查看次数: |
246 次 |
| 最近记录: |