阅读658 返回首页    go 阿里云 go 技术社区[云栖]


ListView异步加载优化

https://www.iteye.com/topic/685986Android实现ListView异步加载图片 》相信很多人都用过这个方法,用起来的确不错,但本人的项目中发现,使用起来还是会有些问题:
1.每次启动程序,图片都到网络上去加载,特别耗流量。
2.如果一屏幕显示的listview的item有10条,就会开10条线程同时下载图片,cpu的占用率特别高。
3.每个item生成一个ViweCache对象,特别耗内存。仿照Android的APIdemo的listview适配器写法,
4.item里面如果图片的url是错误的,就会出现图片的占位符号消失,右边的textview的文字移动过来,影响美观。
  因此根据具体的需要,完善了其功能,在其基础上修改了:主要是AsyncImageLoader.java里面的方法。
  在修改的过程中遇到一个问题,listview的getView()方法莫名其妙执行三次的问题,原来是:listview的布局文件的问题:
 

1.<ListView   
2.android:id="@+id/list"   
3.android:layout_width="fill_parent"   
4.android:layout_height="wrap_content" 
5./>

 将android:layout_height="wrap_content"修改成:android:layout_height="fill_parent"就可以了。

最后更新:2017-04-03 20:19:23

  上一篇:go C# FileStream.Read Method
  下一篇:go Java中利用反射原理拷贝对象