美文网首页
ListView优化的几种方法

ListView优化的几种方法

作者: 朴勋l | 来源:发表于2016-07-04 19:29 被阅读779次

ListView不得不说是Android中最难用的控件之一,说它难用主要是因为它有太多的细节可以优化。那么下面就介绍几种ListView优化的方法。
其实ListView的优化主要分为以下三个方面:
1)采用ViewHolder并避免在getView中执行耗时操作。
2)根据列表的滑动状态来控制任务的执行频率。
3)尝试开启硬件加速来使ListView的滑动更加流畅。

1)不要再getView中执行耗时操作。例如不要再getView方法中加载图片,因为加载图片是一个耗时操作,必然会导致卡顿,所以加载图片应该使用异步的方式来处理,例如ImageLoader。同时也应该减少findViewById方法的执行,因为这个方法也是要消耗资源的。所以应该定义一个ViewHolder来管理这些id,然后通过tag去直接获取id。复用convertView也是很好的办法,不然若是有上万的数据,当我们滑动ListView时,就会产生上万的convertView,这对内存的消耗是难以想象的。

2)控制异步任务的执行频率也是很重要的。对ListView来说,仅仅在getView方法中采取异步操作是不够的。若是用户大量频繁的去滑动列表,就会在一瞬间产生大量的UI更新操作,这些异步任务都是在主线程执行的,就会造成线程池阻塞,也是会导致卡顿的。那么我们可以考虑在列表滑动的时候停止加载部分资源,例如图片。等待列表停下来再去加载这些。具体实现就是去设置在OnScrollListener中去监听onScrollStateChanged的方法中判断列表是否处于滑动状态即可。同时,分页加载,预加载也是很好的方式。

此外,还有一些办法,例如列表中有图片的时候可以对图片进行一些优化,例如对图片进行压缩,加载图片的时候采用三级缓存。

3)硬件加速,硬件加速只需要设置--android:hardwareAccelerate="true"即可。

此外,对ListView的优化方法也同时适用于GridView。

相关文章

  • ListView优化的几种方法

    ListView不得不说是Android中最难用的控件之一,说它难用主要是因为它有太多的细节可以优化。那么下面就介...

  • ListView和RecyclerView

    ListView ListView 性能如何优化 (主要在getView方法上优化:复用view,ViewHold...

  • Android性能优化

    性能优化的方法:1.布局优化2.绘制优化3.内存泄漏优化4.响应速度优化5.ListView和bitmap优化6....

  • Android性能优化-ListView优化

    Android性能优化-ListView ListView的优化主要分为以下几点 1 convertView的复用...

  • 2018-05-13

    ListView的优化.................................................

  • Android性能优化方法

    本篇主要说些Android性能优化的几种方法,主要包括布局优化、绘制优化、内存泄漏优化、响应速度优化、ListVi...

  • ListView优化注意点

    ListView的优化: 1.复用convertView,使用listview中RecycleBin机制. lis...

  • ListView的优化

    ListView的优化 在没有优化之前,每当显示一个屏幕的ListView的Item时都会执行Adapter的ge...

  • ListView 的 Adapter 适配器模板

    ListView中的Adapter优化的通用模板。 如果发现对ListView优化工作做完后,还会卡顿,可以检查n...

  • iOS APP瘦身之优化图片资源

    本文总结了优化应用中图片资源大小的几种方法,有效的使用这些方法,可以减小应用的图片资源体积。 在使用这些优化方法之...

网友评论

      本文标题:ListView优化的几种方法

      本文链接:https://www.haomeiwen.com/subject/goxhjttx.html