关于如何添加手机照片到ImageView上

1、加入读取内存卡的权限

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

2、在菜单栏的点击事件中加入以下代码,由startActivityForResult(intent, LOCAL_IMAGE_CODE);发送意图

public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            Intent intent = new Intent();
            /* 开启Pictures画面Type设定为image */
            intent.setType("image/*");
            /* 使用Intent.ACTION_GET_CONTENT这个Action */
            intent.setAction(Intent.ACTION_GET_CONTENT);
            /* 取得相片后返回本画面 */
            startActivityForResult(intent, LOCAL_IMAGE_CODE);
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

3、在onActivityResult()方法中接收Intent,根据Intent的requestCode决定要处理的事件,在这里获得图片的uri,

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         if (resultCode == RESULT_OK&&requestCode==LOCAL_IMAGE_CODE) {    
                uri = data.getData();
                Log.e("uri", uri.toString());
                cr = this.getContentResolver();
                }
}

4、最后通过这个方法可以将该uri转化成Bitmap,然后将该Bitmap加入到ImageView中去

Bitmap bitmap = BitmapFactory.decodeStream(cr.openInputStream(uri));
                imageView.setImageBitmap(BitmapFactory.decodeStream(cr.openInputStream(uri)));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值