android 调用系统相册并得到图片地址

private static final int IMAGE = 1;//调用系统相册-选择图片

private ImageView iv_slt;


iv_slt = (ImageView) findViewById(R.id.iv_slt);


iv_slt.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
        startActivityForResult(intent, IMAGE);
    }
});

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    //获取图片路径
    if (requestCode == IMAGE && resultCode == Activity.RESULT_OK && data != null) {
        Uri selectedImage = data.getData();
        String[] filePathColumns = {MediaStore.Images.Media.DATA};
        Cursor c = getContentResolver().query(selectedImage, filePathColumns, null, null, null);
        c.moveToFirst();
        int columnIndex = c.getColumnIndex(filePathColumns[0]);
        imagePath = c.getString(columnIndex);
        showImage(imagePath);
        c.close();
    }
}

//加载图片
private void showImage(String imaePath) {
    Bitmap bm = BitmapFactory.decodeFile(imaePath);
    ((ImageView) findViewById(R.id.iv_slt)).setImageBitmap(bm);
}



你可能感兴趣的:(Android)