그래서 기본적으로 내가 달성하려는 Gallery것은 Android에서을 열고 사용자가 multiple images. 이제이 질문이 자주 제기 되었지만 답변이 만족스럽지 않습니다. 주로 IDE의 de 문서에서 흥미로운 것을 발견했기 때문에 (나중에 다시 설명합니다) 사용자 지정 어댑터를 사용하지 않고 바닐라 어댑터 만 사용하고 싶습니다.
이제 하나의 이미지를 선택하는 코드는 다음과 같습니다.
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Picture"), 1);
이제 SO 및 기타 웹 사이트의 사람들은 두 가지 옵션이 있음을 알려줍니다.
1) 사용하지 마십시오 ACTION_GET_CONTENT하지만 ACTION_SEND_MULTIPLE대신.
이것은 작동하지 않습니다. 이것은 sending파일 에 대한 문서에 따른 것이지 retrieving정확히 그것이하는 일입니다. ACTION_SEND_MULTIPLE을 사용할 때 데이터를 보낼 응용 프로그램을 선택해야하는 장치에 창이 열렸습니다. 그것은 내가 원하는 것이 아니기 때문에 사람들이이 솔루션으로 어떻게 이것을 달성했는지 궁금합니다.
2) custom Gallery. 이제 이것은 내가 직접 스타일을 지정해야하기 때문에 내가 찾고있는 것이 아니기 때문에 고려할 마지막 옵션이며 왜 바닐라 갤러리에서 여러 이미지를 선택할 수 없습니까?
이것에 대한 옵션이 있어야합니다 .. 이제 내가 찾은 흥미로운 것은
이것입니다. 문서 설명에서 이것을 찾았습니다 ACTION_GET_CONTENT.
호출자가 여러 개의 반환 된 항목을 처리 할 수있는 경우 (사용자가 다중 선택을 수행함)이를 나타 내기 위해 EXTRA_ALLOW_MULTIPLE을 지정할 수 있습니다.
이것은 꽤 흥미 롭습니다. 여기서 그들은 사용자가 여러 항목을 선택할 수있는 사용 사례를 언급하고 있습니까?
나중에 그들은 문서에서 다음과 같이 말합니다.
EXTRA_ALLOW_MULTIPLE을 사용하여 사용자가 여러 항목을 선택할 수 있습니다.
그래서 이것은 꽤 명백한가요? 이것이 내가 필요한 것입니다. 그러나 내 다음 질문은 : 이것을 어디에 넣을 수 있습니까 EXTRA_ALLOW_MULTIPLE? 슬픈 점은 developers.android 가이드 에서 찾을 수 없으며 INTENT 클래스에서 상수로 정의되지 않았다는 것입니다.
누구든지 이것으로 나를 도울 수 EXTRA_ALLOW_MULTIPLE있습니까?
EXTRA_ALLOW_MULTIPLE통해 여러 항목을 선택할 수 있습니다. getClipData()에서 반환 된 인 텐트를 호출하여 URI를 가져옵니다 onActivityResult. 유일한 문제는 갤러리 위젯이 다중 선택을 허용하지 않는다는 것입니다. 이 경우의 클릭으로 모든 이미지는 choser을 완료하고 당신은 호출하여 (단일 항목) URI를 얻을 수 getData반환 의도에