【问题标题】:How to set limit for selecting images using intent如何设置使用意图选择图像的限制
【发布时间】:2020-03-02 10:12:09
【问题描述】:

在这里我分享了我的代码。有人可以帮忙吗?

var intent = Intent()
intent.type = "image/*"
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true)
intent.action = Intent.ACTION_GET_CONTENT
startActivityForResult(Intent.createChooser(intent, "Select Picture"), PICK_IMAGE_MULTIPLE

【问题讨论】:

    标签: java android android-studio kotlin


    【解决方案1】:

    在使用意图时看起来不可能。即使我们可以在意图中设置该选项,用户选择的应用程序也必须支持它,这根本无法保证。 确保此行为的简单方法是使用可以强制执行此行为的图像选择器库 - 例如 Fishbun 可以这样做:

    FishBun.with(WithActivityActivity.this)
            .setImageAdapter(new GlideAdapter())
            .setMaxCount(5)
            .setMinCount(3)
            .startAlbum();
    

    详细使用说明可见其README file

    免责声明:我与这个库没有任何关系。我推荐它是因为它看起来最近更新并且很受欢迎。

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 我可以得到 kotlin 库
      • 你为什么要问 Kotlin 库?通过单独使用这些,您将完成您的功能。
      【解决方案3】:

      您可以像这样使用 onActivityResult() 中的意图设置图像选择的限制

      if(data.getClipData().getItemCount()==15){
           Toast.makeText(context,"You can select maximum 15 images",1).show();                 
      }
      else //allow selection 
      

      【讨论】:

      • 坏主意,Toast 仅在选择关闭后才会出现,这意味着您必须返回并再次选择。如果它在您选择并弹出 Toast 时不允许更多选择,那也没关系,否则,这是非常不切实际的。
      【解决方案4】:

      对于任何在未来寻找答案的人,请查看this Library out

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-20
        • 2023-03-12
        • 2016-08-11
        • 2018-11-30
        • 1970-01-01
        相关资源
        最近更新 更多