本文實例講述了Android編程學習之抽象類AbsListView用法。分享給大家供大家參考,具體如下:
一、繼承關系
public abstract class AbsListView extends AdapterView <T extendsAdapter>
java.lang.Object
android.view.View
android.view.ViewGroup
android.widget.AdapterView<T extends android.widget.Adapter>
android.widget.AbsListView
二、AbsListView概述
用于為一系列條目實現一個虛擬列表的的基類,但是這個列表在這里沒有空間定義。例如,這個類的子類可以將這個虛擬列表的內容顯示為網格、可旋轉的列表或者棧等等。
三、嵌套類
class AbsListView.LayoutParams//AbsListView實現LayoutParams是為了裝載視圖類型而提供空間。interface AbsListView.MutiChoiceModeListener// MutiChoiceModeListener為多選模式監聽器,響應一個CHOICE_MODE_MULTIPLE_MODAL(自API Level 11).interface AbaListView.OnScrollListener// 提供了一個回調函數,當視圖被滾動時觸發。interface AbsListView.RecyclerListener// 用來接收View被放置在待回收堆區時發送的消息的監聽器。
四、XML屬性
1.AbsListView的XML屬性
android:cacheColorHint// 表明這個列表的背景始終以單一、固定的顏色繪制,可以優化繪制過程。 android:choiceMode//為視圖指定選擇的行為??蛇x的類型有:none、singleChoice、multipleChoice、multipleChoiceModal。 android:drawSelectorOnTop// 若設為true,選擇器將繪制在選中條目的上層。默認為false。 android:faseScrollEnabled// 設置是否允許使用快速滾動滑塊。 android:listSelector// 設置選中項顯示的可繪制對象,可以是圖片或者顏色屬性。 android:scrollingCache// 設置在滾動時是否使用繪制緩存。若設為true,則將使滾動表現更快速,但會占用更內存。默認為true。 android:smoothScrollbar// 為真時,列表會使用更精確的基于條目在屏幕上的可見像素高度的計算方法。默認該屬性為真,如果你的適配器需要繪制可變高的條目,他應該設為假。當該屬性為真時,你在適配器在顯示變高條目時,滾動條的把手會在滾動的過程中改變大小。當設為假時,列表只使用適配器中的條目數和屏幕上的可見條目來決定滾動條的屬性。 android:stackFromBottom// 設置GridView和ListView是否將內容從底部開始顯示。 android:textFilterEnabled// 當設為真時,列表會將結果過濾為用戶類型。前提是這個列表的Adapter必須支持Filterable接口。 android:transcriptMode//設置列表的transcriptMode.有如下選項可選: //(1)disabled 禁用TranscriptMode,也是默認值; //(2)normal 當新條目添加進列表中并且已經準備好顯示的時候,列表會自動滑動到底部以顯示最新條目; //(3)alwaysScroll 列表會自動滑動到底部,無論新條目是否已經準備好顯示.
2.繼承自ViewGroup的XML屬性
android:addStatesFromChildren// 設置這個ViewGroup的drawable狀態是否包括子View的狀態。若設為true,當子View如EditText或Button獲得焦點時,整個ViewGroup也會獲得焦點。android:alwaysDrawnWithCache// 設置ViewGroup在繪制子View時是否一直使用繪圖緩存。默認為true。android:animationCache// 設置布局在繪制動畫效果時是否為其子View創建繪圖緩存。若設為true,將會消耗更多的內存,要求持續時間更久的初始化過程,但表現更好。默認為true。android:clipChildren// 設置子View是否受限于在自己的邊界內繪制。若設為false,當子View所占用的空間大于邊界時可以繪制在邊界外。默認為true。android:clipToPadding//定義布局間是否有間距。默認為true。android:descendantFocusability// 定義當尋找一個焦點View的時候,ViewGroup與其子View之間的關系??蛇x項為://(1)beforeDescendants ViewGroup會比其子View更先獲得焦點;//(2)afterDescendants 只有當無子View想要獲取焦點時,ViewGroup才會獲取焦點;//(3)blockDescendants ViewGroup會阻止子View獲取焦點 android:layoutAnimation//定義當ViewGroup第一次展開時的動畫效果,也可人為地在第一次展開后調用。android:persistentDrawingCache// 定義繪圖緩存的持久性。有如下可選項://(1)none 當使用過后不保留繪圖緩存//(2)animation 在layout animation之后保留繪圖緩存//(3)scrolling 在Scroll操作后保留繪圖緩存//(4)all always保留繪圖緩存
希望本文所述對大家Android程序設計有所幫助。
新聞熱點
疑難解答
圖片精選