listview加载图片问题

移动开发 码拜 9年前 (2016-02-02) 1095次浏览
    private Bitmap getBitmapFromUrl(String url) {
Bitmap bitmap = null;
try {
URLConnection conn = new URL(url).openConnection();
conn.setConnectTimeout(CONNECT_TIMEOUT);
conn.setReadTimeout(READ_TIMEOUT);
bitmap = BitmapFactory.decodeStream((InputStream) conn.getContent());
} catch(Exception e) {
e.printStackTrace();
}
return bitmap;
}
如上方法最后被getView调用,但是当本人快速滑动Listview,程序马上就报错了
报错信息在图片里面,首先报错的信息是内存不够,接着下面就是报的
bitmap = BitmapFactory.decodeStream((InputStream) conn.getContent());这句代码的错误,
有点疑惑,请广大网友们看看,帮忙分析分析,先谢过了。
解决方案:10分
不要本人写异步加载图片的代码了,直接用开源的吧,例如Glide什么的。你这代码里面就犯了很多错,例如,读取一个In之后没有刷新,没有释放。
解决方案:5分
最好用第三方,你这个别写在一起,conn.getContent()是inputstream吗
解决方案:20分
是不是你的图片太大了,太大会溢出的,你需要压缩这个图像,可以设置option
解决方案:5分
用ImageLoader吧,异步加载、缓存都做好了的。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明listview加载图片问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)