Android Image Picker 从图库中选择多个图像,最大限制为 5

Posted

技术标签:

【中文标题】Android Image Picker 从图库中选择多个图像,最大限制为 5【英文标题】:Android Image Picker Select multiple images from gallery with a maximum limit of 5 【发布时间】:2015-07-25 10:44:48 【问题描述】:

我有一个应用程序,用户需要能够选择多张图片以将它们发送到某个地方。但是,他们一次只能发送五张图像。我需要能够限制他们可以通过图像选择器从图库中选择的图像数量。

一句话概括:我想限制用户可以在图库的默认图片选择器中选择的图片/照片的数量

这是我用于图像选择器的代码:

Intent chooseIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
chooseIntent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
startActivityForResult(chooseIntent, 2);

它已经记录了默认情况下在顶部选择了多少张图片:

有没有办法设置最大限制?喜欢让用户最多只能选择 5 张图像。

【问题讨论】:

我只是对不同的设备做了一些测试,遗憾的是不兼容三星 s7 设备,但它适用于 google nexus 6P。这意味着,此代码仅适用于少数设备。 【参考方案1】:

它已经记录了默认情况下在顶部选择了多少张图片:

也许在那个特定的设备上。请理解,android 设备型号数以千计,制造商设置了自己的 UI 来替换现有应用程序的 UI。不要假设所有设备都会在操作栏中显示计数。

有没有办法设置最大限制?喜欢让用户最多只能选择 5 张图像。

不是通过ACTION_PICKACTION_PICK 根本没有记录为支持 EXTRA_ALLOW_MULTIPLE,因此可能存在不允许对该 Intent 进行多项选择的设备。即使在EXTRA_ALLOW_MULTIPLE 是协议一部分的Intent 操作(例如ACTION_GET_CONTENT)上,也没有额外的控制最大计数的方法。

欢迎您根据MediaStore 的查询结果创建自己的选图UI,并建立自己的限制。还有several image picker libraries,其中一个可能已经提供此功能。

【讨论】:

以上是关于Android Image Picker 从图库中选择多个图像,最大限制为 5的主要内容,如果未能解决你的问题,请参考以下文章

颤振:“失去与设备的连接。”第二次使用 image_picker 从 iOS 上的图库中选择照片

React Native - 直接打开安卓图库

如何将 expo-image-picker 与 android 11 范围存储一起使用?

Flutter从相册选择图片和相机拍照(image_picker)

打开相机时 Flutter Image_Picker 崩溃 iOS 应用

Flutter Image Picker 插件为每个选择的文件分配自己的名称