android中的某些手机无法使用gallery中的多选图像

u5rb5r59  于 2021-09-29  发布在  Java
关注(0)|答案(0)|浏览(199)

我正在使用extra_allow_multiple request从gallery中选择多个图像。当我在我的one plus中运行同一个应用程序时,它工作正常,可以选择多个图像。无法从三星m20的多媒体资料中选择多个图像。我做了很多研究,但找不到但可以通过两部手机从“照片”中多选图像)

  1. public class MainActivity extends AppCompatActivity {
  2. public static final int BROWSE_RESULT = 1;
  3. ImageAdapter imageAdapter;
  4. ArrayList<Uri> imagesUri = new ArrayList<>();
  5. GridView gridView;
  6. @Override
  7. protected void onCreate(Bundle savedInstanceState) {
  8. Button btn_browse,btn_delete;
  9. super.onCreate(savedInstanceState);
  10. setContentView(R.layout.activity_main);
  11. gridView= findViewById(R.id.grid_view);
  12. btn_browse = findViewById(R.id.btn_browse);
  13. btn_browse.setOnClickListener(new View.OnClickListener(){
  14. @Override
  15. public void onClick(View v) {
  16. f_openImageExplorer();
  17. }
  18. });
  19. }
  20. public void f_openImageExplorer() {
  21. Intent intent = new Intent();
  22. intent.setType("image/*");
  23. intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
  24. intent.setAction(Intent.ACTION_GET_CONTENT);
  25. // startActivityForResult(intent, BROWSE_RESULT);
  26. startActivityForResult(Intent.createChooser(intent, "Select Picture"), BROWSE_RESULT);
  27. }
  28. @Override
  29. protected void onActivityResult(int requestCode, int resultCode,Intent data) {
  30. super.onActivityResult(requestCode, resultCode, data);
  31. if (requestCode == BROWSE_RESULT) {
  32. if (resultCode == MainActivity.RESULT_OK) {
  33. if (data.getClipData() != null) {
  34. Toast.makeText(this,Integer.toString(resultCode) , Toast.LENGTH_SHORT).show();
  35. int imageCount = data.getClipData().getItemCount();
  36. for(int i = 0; i< imageCount;i++){
  37. Uri imageUri = data.getClipData().getItemAt(i).getUri();
  38. imagesUri.add(imageUri);
  39. imageAdapter= new ImageAdapter(getBaseContext(), imagesUri);
  40. gridView.setAdapter(imageAdapter);
  41. imageAdapter.notifyDataSetChanged();
  42. }
  43. }
  44. else
  45. {
  46. Uri singleImageUri = data.getData();
  47. imagesUri.add(singleImageUri);
  48. ImageAdapter imageAdapter= new ImageAdapter(getBaseContext(), imagesUri);
  49. gridView.setAdapter(imageAdapter);
  50. imageAdapter.notifyDataSetChanged();
  51. }
  52. }
  53. }
  54. }
  55. }

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题