文档章节

android选取照片并以其uri取得绝对路径

ka布
 ka布
发布于 2016/10/31 16:05
字数 140
阅读 15
收藏 0

1、在自己的activity中调用startActivityForResult:

mBtn_upload.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
                intent.setType("image/*");
                startActivityForResult(intent, CHOOSE_IMAGEFILE_RESULT_CODE);
            }
        });

2、选择图片。

3、在自己的activity中重写onActivityResult方法,以取得图片的uri:

@Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        Uri uri = data.getData();
        Log.d(TAG, "image file path is " + getAbsolutePath(this, uri));
    }

4、上面的getAbsolutePath方法根据选取的图片的uri取得其绝对路径,实现如下:

private String getAbsolutePath(Context context, Uri uri) {
        ContentResolver localContentResolver = context.getContentResolver();
        Cursor localCursor = localContentResolver.query(uri, null, null, null, null);
        localCursor.moveToFirst();

        return localCursor.getString(localCursor.getColumnIndex("_data"));
    }


© 著作权归作者所有

ka布
粉丝 0
博文 20
码字总数 6282
作品 0
东莞
技术主管
私信 提问
说说 Android 中如何使用摄像头和相册

很多 APP 应用都有用户头像功能,用户既可以调用摄像头马上拍一张美美的自拍,也可以打开相册选取一张心仪的照片作为头像。 1 调用摄像头 布局文件: 活动类代码: getExternalCacheDir() 可...

deniro
2018/05/26
0
0
项目需求讨论 - WebView下拍照及图片选择功能

前言: 如果觉得掘金上看图片放大看不清楚,可以跳到另外的同步发布的链接看,放大图片下部有个可以查看原图功能,很清楚:项目需求讨论 - WebView下拍照及图片选择功能 现在很多app里面,都...

青蛙要fly
2018/06/23
0
0
Android从图库选择图片失败

项目中发现调用capture拍摄照片,然后再通过图库选取照片时有时候找不到文件(这里有个特殊需求,选择图片之后会自己压缩图片再创建一个)。 1、自己创建照片时记得发送广播让media scanner...

Kingguary
2012/10/29
379
0
problem_report cannot be resolved or is not a field

一直显示R.java was modified manually! Reverting to generated version!不知道应该怎么解决,求救!!!!!部分代码如下,最后一句有错误problem_report cannot be resolved or is not a...

可见影子
2014/12/30
653
0
Android4.0 Message 中添加附件

一,基本情况 不说废话,先直接上图,大致情况就是,在一则New Message中添加一些附件(图片,视频,声音等)和信息一起发送,如下图; 二,基本思路 其实,这就类似于我们的拍照上传,是采用...

地方v大
2013/07/10
669
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring使用ThreadPoolTaskExecutor自定义线程池及实现异步调用

多线程一直是工作或面试过程中的高频知识点,今天给大家分享一下使用 ThreadPoolTaskExecutor 来自定义线程池和实现异步调用多线程。 一、ThreadPoolTaskExecutor 本文采用 Executors 的工厂...

CREATE_17
今天
5
0
CSS盒子模型

CSS盒子模型 组成: content --> padding --> border --> margin 像现实生活中的快递: 物品 --> 填充物 --> 包装盒 --> 盒子与盒子之间的间距 content :width、height组成的 内容区域 padd......

studywin
今天
7
0
修复Win10下开始菜单、设置等系统软件无法打开的问题

因为各种各样的原因导致系统文件丢失、损坏、被修改,而造成win10的开始菜单、设置等系统软件无法打开的情况,可以尝试如下方法解决 此方法只在部分情况下有效,但值得一试 用Windows键+R打开...

locbytes
昨天
8
0
jquery 添加和删除节点

本文转载于:专业的前端网站➺jquery 添加和删除节点 // 增加一个三和一节点function addPanel() { // var newPanel = $('.my-panel').clone(true) var newPanel = $(".triple-panel-con......

前端老手
昨天
8
0
一、Django基础

一、web框架分类和wsgiref模块使用介绍 web框架的本质 socket服务端 与 浏览器的通信 socket服务端功能划分: 负责与浏览器收发消息(socket通信) --> wsgiref/uWsgi/gunicorn... 根据用户访问...

ZeroBit
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部