Skip to content

Latest commit

 

History

History
10 lines (5 loc) · 1023 Bytes

ListView性能优化.md

File metadata and controls

10 lines (5 loc) · 1023 Bytes

ListView性能优化

  重用了convertView,很大程度上的减少了内存的消耗。通过判断convertView是否为null,是的话就需要产生一个视图出来,然后给这个视图数据,最后将这个视图返回给底层,呈献给用户。

   每次在getVIew的时候,都需要重新的findViewById,重新找到控件,然后进行控件的赋值以及事件相应设置。这样其实在做重复的事情,因为的geiview中,其实包含有这些控件,而且这些控件的id还都是一样的,也就是其实只要在view中findViewById一次,后面无需要每次都要findViewById了。

  通过线程来异步加载图片,把Http的相关操作放在线程里,最好使用线程池来控制线程数。返回的bitmap通过Handler来更新每个Item布局上的ImageView(就是赋上图片)。

  当遇到大图片的话,可以对图片处理一下再使用,比如压缩,压缩到480*800。网上有很多关于图片压缩的资料。