1. 程式人生 > >Android ListView常用屬性解析

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

為真時,列表會使用更精確的基於條目在螢幕上的可見畫素高度的計算方法。 預設該屬性為真,如果你的介面卡需要繪製可變高的條目,他應該設為假。 當該屬性為真時,你在介面卡在顯示變高條目時,滾動條的把手會在滾動的 過程中改變大小。當設為假時,列表只使用介面卡中的條目數和螢幕上的 可見條目來決定滾動條的屬性