【问题标题】:How to pick multiple image from gallery Android如何从图库 Android 中选择多个图像
【发布时间】:2015-05-15 05:26:07
【问题描述】:
private static final int PICK_FROM_GALLERY = 2;    
    private void fireGallerypick() {
        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"), PICK_FROM_GALLERY);
    }

public void onActivityResult(int requestCode, int resultCode, Intent data) {
    switch (requestCode) {
        case PICK_FROM_GALLERY:
            if (resultCode == -1) {
                System.out.println("Gallery pick success");
                String[] all_path = data.getStringArrayExtra("all_path"); //But it returns null
                break;
            }
    }
}

我可以选择多个图像,并且当我完成选择时。我需要String[] 中所有选定文件的路径。提前致谢。

【问题讨论】:

    标签: android android-image android-gallery


    【解决方案1】:
    Intent i = new Intent(Action.ACTION_MULTIPLE_PICK);
    startActivityForResult(i, 200);
    

    要在 onActivityResult 中获取图像路径,请这样做 -

    @Override
        public void onActivityResult(int requestCode, int resultCode, Intent data) {
           if (requestCode == 200 && resultCode == Activity.RESULT_OK) {
    
                String[] all_path = data.getStringArrayExtra("all_path");
    
    
    
            for (String string : all_path) {
    
                String sdcardPath = string;
    
    
            }
    

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

    【讨论】:

    • 我已经用过了,如何获取onActivityResult中选中图片的所有路径...
    • String[] imagesPath = data.getStringExtra("data").split("\\|"); 返回 null 我也试过 String imagesPath = data.getStringExtra("data"); 这也返回 null ..
    • 让我看看。
    • 你检查了吗? @SaiKiran
    • 仍然返回 null,java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=65538, result=-1, data=Intent { dat=content://media/external/images/media/1944 flg=0x1 }} to activity {com.abs_ind.www.example/com.abs_ind.www.example.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.util.Iterator java.util.ArrayList.iterator()' on a null object reference
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多