Androidギャラリーから複数の画像を選択する 質問する

Androidギャラリーから複数の画像を選択する 質問する

つまり、基本的に私が達成しようとしているのは、GalleryAndroidでを開いてユーザーに選択させることですmultiple images。今、この質問が寄せられています頻繁にしかし、私はその答えに満足していません。主な理由は、IDE のドキュメントで興味深いものを見つけたためです (これについては後で説明します)。そのため、カスタム アダプターではなく、標準のアダプターだけを使いたいのです。

1 つの画像を選択するためのコードは次のとおりです。

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

SO や他の Web サイトのユーザーは、2 つのオプションがあると言っています。

ACTION_GET_CONTENT1) 代わりに、使用しないでくださいACTION_SEND_MULTIPLE
これは機能しません。これは、sendingファイルのドキュメントに従っており、そうではなくretrieving、まさにそのとおりです。ACTION_SEND_MULTIPLE を使用すると、デバイスでウィンドウが開き、データの送信先のアプリケーションを選択する必要があります。これは私が望んでいることではありません。そのため、このソリューションでこれをどのように実現したのか疑問に思います。何か見落としているのでしょうか?

2) を実装しますcustom Gallery。これが私が検討する最後のオプションです。個人的には、これは私が探しているものではないと思います。自分でスタイルを設定する必要があり、なぜバニラ ギャラリーで複数の画像を選択できないのでしょうか?

これにはオプションがあるはずです。今、私が見つけた興味深いことは次のとおりです。
私は のドキュメントの説明でこれを見つけましたACTION_GET_CONTENT

呼び出し元が返された複数の項目を処理できる場合 (ユーザーが複数選択を実行する場合)、これを示すために EXTRA_ALLOW_MULTIPLE を指定できます。

これはかなり興味深いですね。ここでは、ユーザーが複数の項目を選択できるユースケースについて言及しているのでしょうか?

後でドキュメントでこう言っています:

ユーザーが複数の項目を選択できるようにするには、EXTRA_ALLOW_MULTIPLE を使用します。

これはかなり明白ですよね?これが私が必要としているものです。しかし、私の次の質問は、これをどこに置けばいいのかということです。EXTRA_ALLOW_MULTIPLE悲しいことに、どこにもこれを見つけることができません開発者向け Android ガイドまた、これは INTENT クラスで定数として定義されていません。

誰かこれについて私を助けてくれませんかEXTRA_ALLOW_MULTIPLE?

ベストアンサー1

EXTRA_ALLOW_MULTIPLE オプションは、Intent.putExtra() メソッドを通じてインテントに対して設定されます。

intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);

上記のコードは次のようになります。

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"), 1);

注: このEXTRA_ALLOW_MULTIPLEオプションは Android API 18 以降でのみ使用できます。

おすすめ記事