【问题标题】:How to change 'open' in gallery intent to 'done'?如何将画廊意图中的“打开”更改为“完成”?
【发布时间】:2017-08-11 06:58:48
【问题描述】:

我正在使用以下意图打开图库以选择多个图像和视频:

        Intent intent = new Intent();
        intent.setType("image/* video/*");
        intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
        intent.setAction(Intent.ACTION_GET_CONTENT);
        startActivityForResult(Intent.createChooser(intent, "Select Images"), MULTIPLE_IMAGE_SELECT);

画廊打开后的样子

顶部显示“打开”,我想将其更改为“完成”或“确定”,如何实现? 谢谢。

【问题讨论】:

    标签: java android android-intent android-gallery


    【解决方案1】:

    画廊打开后的样子

    大约有 20 亿台 Android 设备,分布在数千种设备型号中。您的Intent 将打开这些设备上安装的数百个(如果不是数千个)可能的 Android 应用程序之一。它与“图库”没有任何特定关系,当然也与屏幕截图中的任何特定应用程序无关。当您在一台特定设备上运行代码时,就会出现这种情况。

    如何实现?

    您编写自己的 UI,而不是将其委托给其他人的应用。您无法控制其他开发者应用的 UI。

    正如 Ahmad 指出的那样,image picker libraries 有很多。也许你可以使用一个。

    【讨论】:

      【解决方案2】:

      编辑:将"images/*" 更改为"image/*"

      更改此行intent.setType("video/*, image/*");

          Intent intent = new Intent();
          intent.setType("video/*, image/*");
          intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
          intent.setAction(Intent.ACTION_GET_CONTENT);
          startActivityForResult(Intent.createChooser(intent, "Select Images"), MULTIPLE_IMAGE_SELECT);
      

      注意:EXTRA_ALLOW_MULTIPLE 选项仅在 Android API 18 及更高版本中可用。

      可以使用自定义库。喜欢:

      MultipleImagePick

      MultiImageSelector

      TelegramGallery

      【讨论】:

      • 我尝试了您的解决方案,但它仍然显示“打开”而不是“完成/确定”。您还有其他可行的解决方案吗?
      • intent.setType("video/*, images/*"); 在此更改之后,正如您所建议的,目的是只让我选择视频,没有图像。而且我不能使用外部库。
      • 有一个错误,不是“images/*”而是“image/*”
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多