使用Intents从Android上的照片库中选择多个图像

时间:2011-01-20 11:42:04

标签: java android image gallery

@查看此https://stackoverflow.com/a/15029515/185022

我试图从图库中选择图片,但我只找到了选择单张图片的方法。

Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, 1);

有没有办法选择多张图片?

4 个答案:

答案 0 :(得分:7)

答案 1 :(得分:4)

首先,您需要将putExtra与photoPickerIntent一起使用

photoPickerIntent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE);

然后在你的on活动结果中,你应该从这个

获取Intent的ClipData
ClipData clipData = data.getClipData();
//Where data is param intent of onActivityForResult

迭代此clipData以获取特定拾取图像的URI。

for (int i = 0; i < clipData.getItemCount(); i++){
    Uri uri = clipData.getItemAt(i).getUri();
}

我希望这会有所帮助

答案 2 :(得分:1)

为什么不尝试ACTION_SEND_MULTIPLE呢。你将收到一套Uris。

这样的东西
    if (Intent.ACTION_SEND_MULTIPLE.equals(action))
        && Intent.hasExtra(Intent.EXTRA_STREAM)) {
        ArrayList<Parcelable> list =
    intent.getParcelableArrayListExtra(Intent.EXTRA_STREAM);
        for (Parcelable parcel : list) {
           Uri uri = (Uri) parcel;
           /// do things here.
       }
    } 

在google-groups帖子上看到此代码块。试试吧。 感谢。

答案 3 :(得分:1)

我认为,您应该为多个图片选择操作实现自定义图库。

详细了解here