android - 从图库中点击选择多张图片

标签 android image android-intent android-gallery

我是 android 的新手,我编写了代码来从图库中选择多个图像,为了实现这一点,我编写了两种方法来实现这一点。 在 onActivityResult 上,我正在使用 data.getClipdata接收每张图片。

这是选择多张图片的第一种方式。

Intent intent = new Intent();
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Picture"), RESULT_LOAD_IMAGE);

这是选择多张图片的第二种方式。

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

我选择了第二种选择多张图片的方式,因为在实现它时它看起来更适合我的应用程序,我可以通过单击选择多张图片并停止使用第一种方式,因为我必须使用长按来选择多张图片。在 android studio 模拟器和诺基亚设备 USB 调试上一切顺利。但是在一台三星设备上我根本无法选择图像,这里第一种方法奏效了。所以我的问题是如何在这种情况下使用第二种方式获得多个图像,如果可能的话,这个问题也会出现在其他设备上吗?

最佳答案

正如您提到的三星选项 1 和其他设备选项 2 的问题。 所以只需输入条件并检查当时使用的是哪个设备

String deviceName = "Samsung";
if(deviceName.e(android.os.Build.MODEL)){
    Intent intent = new Intent();
    intent.setType("image/*");
    intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
    intent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(Intent.createChooser(intent, "Select Picture"), RESULT_LOAD_IMAGE);
}else{
    Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
    intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
    startActivityForResult(intent, RESULT_LOAD_IMAGE);
}

关于android - 从图库中点击选择多张图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51780105/

相关文章:

java - 使用多个警报

python - 如何在 Tkinter 的同一窗口中放置图像?

image - 指定百分比而不是时间到 ffmpeg

android - 使用 ACTION_SEND 在 Android 中发布到 Facebook

android - 如何设置 ExpandableListView 的二级列表样式?

android - 为 Firebase Android 结合 Facebook 和 Google 身份验证

安卓。 AudioTrack 类的问题。声音有时会丢失

php - 使用 PHP GD 图像库着色和交换颜色?

android - 转到最喜欢的联系人的 Intent URI

android : does new intent has "on Resume method"? new intent 能否自动关闭?