intent.ACTION_GET_CONTENT困扰了很久!

glee10 2014-07-18 06:39:53
我的程序中想实现这样的功能,点击后通过intent获取图片。
代码如下:
intentFromGallery.setType("image/*");//设置为取图片类
intentFromGallery.setAction(Intent.ACTION_GET_CONTENT);
intentFromGallery.putExtra("return-data", true);
startActivityForResult(intentFromGallery,0);
执行过程中正常,选取也正常,但是返回的数据不知道是什么类型,取的不对。
通过
Bundle extras = data.getExtras();
Bitmap bitmap = extras.getParcelable("data");
取不出bitmap。
通过
Uri uri = data.getData();
String yourpath=uri.toString();
将这个路径写到sharedepreferences中,打开来看是这样的:
<string name="yourpath">content://com.android.providers.media.documents/document/image%3A21</string>
然后把这个yourpath提取出来,用
imageview.setImageBitmap(BitmapFactory.decodeFile(yourPath));
时出错。
大体情况如此。
我的需求是,intent返回来后要么是可以用的路径,要么能提出Bitmap来,请问我以上做法哪儿不对头了?
关于intent.ACTION_GET_CONTENT还有多少令人伤心的不能忽略的地方?
请各位高手指点!拜上!!!!
...全文
4631 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
饭饭2013 2015-06-14
  • 打赏
  • 举报
回复
ACTION_PICK
CiderVL 2014-10-29
  • 打赏
  • 举报
回复
LZ怎么解决了继续帮忙啊
glee10 2014-07-21
  • 打赏
  • 举报
回复
谢谢!已解决!
逍遥笑 2014-07-19
  • 打赏
  • 举报
回复
这是返回的一个在图片数据库中的uri,你需要通过这个uri去查询Media数据获取图片
glee10 2014-07-18
  • 打赏
  • 举报
回复
把上面的 String yourpath=uri.toString(); 改成: String yourpath=uri.getPath(); 写到sharedepreferences中,打开来看是这样的: <string name="yourpath">/document/image:21</string>

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧