Android 图片选择器 Select 来自图库的多张图片,最大限制为 5

Android Image Picker Select multiple images from gallery with a maximum limit of 5

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

一句话概括:我想限制用户在默认图像select中可以select的images/photos数量,或者来自画廊.

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

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

它已经记录了默认情况下 select 在顶部编辑了多少图像:

有没有办法设置最大限制?希望一个用户最多只能 select 5 张图片。

It already keeps track of how many images are selected at the top by default:

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

Is there a way to set a maximum limit? Like to have a user only be able to select up to 5 images.

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

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