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