android 图片无法编辑,解决Android从相册中获取图片出错图片却无法裁剪问题的方法...

本文介绍了在Android开发中遇到的从相册选择图片后无法进行裁剪的问题,主要原因是4.4及以上版本的URI与4.3及以下版本不同。通过创建File对象并转换为Uri,然后在onActivityResult中处理裁剪,最终提供了一个简单的示例代码,帮助开发者解决此类问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在学习获取相册中图片进行裁剪的时候遇到了比较大的问题,在纠结了近半天才真的解决,下面分享一下学习经验。

问题:

选择了相册中的图片之后要进入图片裁剪的时候出错,(华为)手机提示“此图片无法获取”,经百度后,明白是版本不同导致的URI的问题的问题,原文如下:

4.3或以下,选了图片之后,根据Uri来做处理,很多帖子都有了,我就不详细说了.主要是4.4,如果使用上面pick的原生方法来选图,返回的uri还是正常的,但如果用ACTION_GET_CONTENT的方法,返回的uri跟4.3是完全不一样的,4.3返回的是带文件路径的,而4.4返回的却是content://com.android.providers.media.documents/document/image:3951这样的,没有路径,只有图片编号的uri.这就导致接下来无法根据图片路径来裁剪的步骤了.

在程序可以运行之后也是进行了一定的测试,如下图:

首先是用onActivityResult接收到的返回值作为Toast输出:

908ebb193bc0292a7a1bfe2dc8763908.png

得到如下效果:

e52d325bcff963e9501bd970be4e430d.png

然后是用该图片的绝对路径作为Toast输出:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值