2019-08-09

上传相册图片

 View headerView = mNav.getHeaderView(0);
    imh = headerView.findViewById(R.id.hand_img);
    imh.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Intent.ACTION_PICK);
            intent.setType("image/*");
            startActivityForResult(intent,5);
        }
    });
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode==5&&resultCode==RESULT_OK){
             path_img = data.getData();
            Toast.makeText(this, path_img.toString(), Toast.LENGTH_SHORT).show();
            ivRegisterImg.setImageURI(path_img);
            if(path_img.getScheme().equals("file") ){//如果是普通文件的处理,直接new对象
                image = path_img.getPath();
            }else if(path_img.getScheme().equals("content") ){////如果是通过内容提供者读取,需要到内容提供者中再读取
                filepath = getFileFromContentUri(path_img, this);
            }else{
                Toast.makeText(this, "图片不存在", Toast.LENGTH_SHORT).show();
            }
         
    }
    super.onActivityResult(requestCode, resultCode, data);
}

//返回从数据库 (内容提供者)图片的路径
 private String getFileFromContentUri(Uri path_img, Context context) {
        String filePath = null;
        if(path_img == null){
            return null;
        }
        //到内容提供者中读取照片的路径
        ContentResolver resolver = context.getContentResolver();
        String[] strs = {MediaStore.MediaColumns.DATA};//图片在图片内容提供者数据库中的字段:文件的路径
        Cursor cursor = resolver.query(path_img, strs, null, null, null);
        if(cursor != null){
            cursor.moveToFirst();//不为空,说明得到了图片,然后移动到第一张图
             filePath = cursor.getString(cursor.getColumnIndex(strs[0]));
        }
        return filePath;
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第一级标题 第二级标题 [图片上传失败...(image-b4d006-1565331840783)]格式: [图...
    Hao文阅读 1,270评论 0 0
  • 台风“韦帕”在8月1日的时候二次登陆了,这个小台风感觉有点过分,但又不够过分,雨一直在下,还带着横风,只要一到室外...
    王玙珩阅读 2,806评论 4 1
  • 字段类型 使用时需引入Django.db.models包,字段类型如下:AutoField:自动增长的Intege...
    按时发疯阅读 2,463评论 0 0
  • 西艺后门的一条街,一副坊间微缩版的《清明上河图》。卖烤串的,卖凉粉的,炸臭豆腐的,门帘都找不到的“地下”画室,衣服...
    东方檀阅读 2,286评论 4 1
  • 04-26收评:沪指跌超1%再失3100点, 深成指重挫逾2%! 【回顾盘面】 4月26日(周四)两市低开低走收中...
    飞鸿FH阅读 2,720评论 0 0

友情链接更多精彩内容