[android] 从gallery获取图片

效果就是点击按钮,打开系统图库应用,可以选择一张里面的图片展示出来

设置隐式意图

获取Intent对象,通过new出来

调用Intent对象的setAction()方法,设置动作,参数:Intent.ACTION_PICK

调用Intent对象的setType()方法,设置类型,参数 :”image/*”还可以弄视频

调用startActivityForResult()方法,开启带返回值的

查看系统的gallery源码可以知道,返回了一个Intent对象,里面隐式传递的数据,额外数据

重写方法onActivityResult()方法

获取到图片的Uri路径,Intent对象的getData()方法

图片缩略图Bitmap对象,调用Intent对象的getParcelableExtra(“data”);

调用ImageView对象的setImageUri()方法,直接显示图片

    //选择图片
    public void selectImg(View v){
        Intent intent=new Intent();
        intent.setAction(Intent.ACTION_PICK);
        intent.setType("image/*");
        startActivityForResult(intent, 0);
    }
    //响应回调
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if(data!=null){
            Uri uri=data.getData();
            iv_img.setImageURI(uri);
        }
        
    }
原文地址:https://www.cnblogs.com/taoshihan/p/5346668.html