Android ListView常用属性解析

ListView常用属性解析

下面的程序作为示例

<ListView
      android:id="@id/list"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:cacheColorHint="#00000000"
      android:descendantFocusability="blocksDescendants"
      android:divider="@null"
      android:drawSelectorOnTop="false"
      android:fadingEdge="none"
      android:fastScrollEnabled="false"
      android:footerDividersEnabled="true"
      android:headerDividersEnabled="true"
      android:listSelector="@android:color/transparent"
      android:scrollbars="none"
      android:smoothScrollbar="true" />

1.android:descendantFocusability

beforeDescendants:viewgroup会优先其子类控件而获取到焦点

afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点

blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点

2. android:drawSelectorOnTop

android:drawSelectorOnTop=”true” 点击某一条记录,颜色会显示在最上面,记录上的文字被遮住,所以点击文字不放,文字就看不到
android:drawSelectorOnTop=”false” 点击某条记录不放,颜色会在记录的后面,成为背景色,但是记录内容的文字是可见的

3. android:fadingEdge

fadingEdgeLength表示阴影部分的高度,requiresFadingEdge表示阴影的方向

    android:fadingEdge="vertical"  
    android:fadingEdgeLength=“50dp"  
    android:requiresFadingEdge="vertical"

4. android:fastScrollEnabled

android:fastScrollEnabled=”true”
是让ListView出现快速滚动的按钮,比较少的item时候不会出现,多了就会出现。不出现原因是数据不多的原因,只要数据足够多,才会自动出现的。

5. android:footerDividersEnabled

android:footerDividersEnabled=”true” 和android:headerDividersEnabled=”true”对应。
api说明是:设成flase时,此ListView将不会在页脚或者头部视图 前画分隔符。此属性缺省值为true。
这说明这个属性只对页脚或者头部起作用,如果listview中没有添加页脚这个属性就不起作用。

6. android:cacheColorHint

指示该列表总是在固定的单色、不透明的背景下绘制。这允许列表优化其绘制过程

7. android:smoothScrollbar

为真时,列表会使用更精确的基于条目在屏幕上的可见像素高度的计算方法。 默认该属性为真,如果你的适配器需要绘制可变高的条目,他应该设为假。 当该属性为真时,你在适配器在显示变高条目时,滚动条的把手会在滚动的 过程中改变大小。当设为假时,列表只使用适配器中的条目数和屏幕上的 可见条目来决定滚动条的属性

    原文作者:牧童遥指2000
    原文地址: https://www.jianshu.com/p/c0d1cd643a08
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞