码迷,mamicode.com
首页 > 移动开发 > 详细

20-2-4 安卓软件中加载较大图片导致crash(Failed to allocate a xxx byte allocation with xxxfree bytes)的问题

时间:2020-02-04 14:20:42      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:图片   获取   它的   man   href   locate   decode   oca   phi   

在调用图片加载到imageview时,有一张图片点击后闪退,猜测是图片大小问题,

通过查询安卓程序员开发手册,在

https://developer.android.com/topic/performance/graphics/load-bitmap.html?hl=zh_cn#java中找到了相应的解决方案——即不通过设置

android:largeHeap="true"

来让设备成功显示过大的图片。

分三步走:

(1)计算原图片从原像素到我所需的最高像素所要缩小的倍数

(2)利用option进行解码,先不分配内存(options.inJustDecodeBounds = true),只获取它的像素值,然后进行缩小

(3)分配内存,将缩小的倍数加入option,进行载入

思路如此,源代码在上面的网页中可以找到,希望我的思路可以提供一些帮助

20-2-4 安卓软件中加载较大图片导致crash(Failed to allocate a xxx byte allocation with xxxfree bytes)的问题

标签:图片   获取   它的   man   href   locate   decode   oca   phi   

原文地址:https://www.cnblogs.com/graphiteliang/p/12259124.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!