Android开发系列之ListView

Posted 蔡鸿军

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发系列之ListView相关的知识,希望对你有一定的参考价值。

      在android开发中,我们最常接触的控件之一就是ListView,因为我们常常需要展示列表文本或者图片信息。但是因为ListView所展示的信息容量太大了,所以如果我们处理不当的话,那么就有可能会带来性能问题。

      优化之一就是在Adapter里面采用ViewHolder进行视图缓存,避免了每次在调用getView()的时候都去通过findViewById()实例化控件。据测试,使用ViewHolder将提高50%以上的效率。具体的使用方法很多,读者可以自行进行查找。

      优化之二直接利用属性设置分割线,通过属性divider可以设置分割线的颜色,通过dividerHeight可以设置分割线的高度。这样的话,我们就不需要在adapter加载的item view单独设置一个分割线了。

      优化之三隐藏滚动条和取消ListView的item点击效果,可以分别通过属性android:scrollbars="none"和android:listSelector="@android:color/transparent"。

      优化之四遍历ListView中的所有item,通过代码:for循环,mListView.getChildAt(i)获取。

      优化之五处理空ListView,通过调用setEmptyView设置一个空的显示页面。

      优化之六在onTouchEvent事件里面,判断上滑、还是下滑,进而实现一些定制化的效果。

      demo微信聊天页面,我们可以在Adapter的getView方法里面,根据一个聊天类型加载不同的View。

以上是关于Android开发系列之ListView的主要内容,如果未能解决你的问题,请参考以下文章

android开发系列之socket编程

android开发系列之由ContentValues看到的

Android开发系列之学习路线图

Android开发系列之全局变量

android开发系列之多线程

android开发系列之使用xml自定义控件