码迷,mamicode.com
首页 > 移动开发 > 详细

android-继承BaseAdapter--自己定义适配器,getView运行多次的解决方法

时间:2017-06-03 12:36:35      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:width   解决   android   adapter   selector   androi   span   tracking   htm   

定义的getView运行多次的ListView布局:
 <ListView
        android:id="@+id/lv_messages"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/linearLayout1"
        android:cacheColorHint="#0000"
        android:divider="#0000"
        android:dividerHeight="2dp"
        android:listSelector="#0000" >
    </ListView>


运行多次原因是由于每显示一个VIew,它都去測量view的高度。运行measure方法。导致getView运行多次。

正确的布局:

 <ListView
        android:id="@+id/lv_messages"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/linearLayout1"
        android:cacheColorHint="#0000"
        android:divider="#0000"
        android:dividerHeight="2dp"
        android:listSelector="#0000" >
    </ListView>

把width和height都设置成fill_parent,假设ListView有父布局,也把父布局的width和height设置成fill_parent,这样就成功的攻克了自己定义适配器getView 运行多次的问题。

以下这3行能够解决ListView滑动变黑的问题:

   android:cacheColorHint="#0000"
        android:divider="#0000"
        android:listSelector="#0000" 

希望能够帮助到大家解决这个问题!


android-继承BaseAdapter--自己定义适配器,getView运行多次的解决方法

标签:width   解决   android   adapter   selector   androi   span   tracking   htm   

原文地址:http://www.cnblogs.com/gavanwanggw/p/6936675.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!