@これを見る https://stackoverflow.com/a/15029515/185022
ギャラリーから画像を選択しようとしていますが、1つの画像を選択する方法しか見つかりませんでした。
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, 1);
複数の画像を選択する方法はありますか?
同じようにカスタムギャラリーを作成します: Androidのカスタム画像ギャラリーで、グリッドにチェックボックスをオンにして複数を選択します
まず、photoPickerIntentでputExtraを使用する必要があります
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();
}
これが役に立てば幸い
私は、複数の画像選択アクションに対してカスタムギャラリーを実装する必要があると思います。
詳細は here を参照してください。
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の投稿で見ました。これを試してみてください。ありがとう。