android - 如何使用 Android 的 INTENT 类绕过文件夹显示并直接进入照片显示?
问题描述
我希望我的应用程序仅列出/显示手机的照片(仅此而已),以便用户可以选择其中一张,其位图稍后将由我的剩余代码处理。
问题是下面的代码不是直接显示照片,而是首先显示两个文件夹(照片和相机),照片存储/分组并等待选择。如何绕过文件夹显示/选择并直接进入照片显示/选择?这是当前代码:
Intent intent = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.setType("image/*");
startActivityForResult(intent,0);
解决方案
我希望我的应用仅列出/显示手机的照片(仅此而已)
查询MediaStore
以查找图像并自己处理 UI。
问题是下面的代码不是直接显示照片,而是首先显示两个文件夹(照片和相机)
它在您的设备上执行此操作。其他设备上的结果会有所不同,其中大约有 20 亿个,分布在大约 20,000 个设备型号上。您正在委派给一个不确定的第三方应用程序,该应用程序会因设备和用户而异。这可能会导致用户选择器选择可以处理您的Intent
.
如果您不喜欢这种行为,请查询MediaStore
以查找图像并自己处理 UI。这是更多的工作,但您可以完全控制 UI。
推荐阅读
- java - 从字节数组生成的 zip 文件无效
- python - Python函数调用堆栈:train_function错误
- mysql - 在mysql中垂直向上移动列数据
- html - 按下按钮时滚动到网页中某个部分的 HTML 代码
- css - 在 Firefox 中勾勒出圆形按钮的轮廓,而不是 Edge
- azure-cognitive-services - 上传 Business Central Base App.xlf 导致“无法提取上传文件的内容”。
- c# - 如何从 C# 获取我在 Linux 上创建的文件夹列表?
- mysql - 加入后MySql和DISTINCT
- html - 在 vb.net 中动态创建的文本框中设置宽度的问题
- node.js - 在JS文件nodejs中导入TS文件找不到模块