標籤:blog http io ar os sp 檔案 資料 div
其中BaseAdapter需要重寫的方法:
getCount(),getItem(int position),getItemId(int position),
getView(int position, View convertView, ViewGroup parent)
listView在開始繪製的時候,系統首先調用getCount()函數,根據他的傳回值得到 listView的長度,然後根據這個長度,調用getView()逐一繪製每一行。如果你的 getCount()傳回值是0的話,列表將不顯示同樣return 1,就只顯示一行。系統顯示列表時,首先執行個體化一個適配器(這裡將執行個體化自訂的適配器)。當手動完成適配時,必須手動映射資料,這需要重寫getView()方 法。系統在繪製列表的每一行的時候將調用此方法。getView()有三個參數,position表示將顯示的是第幾行,covertView是從布局文 件中inflate來的布局。我們用LayoutInflater的方法將定義好的item.xml檔案提取成View執行個體用來顯示。然後將xml檔案中 的各個組件執行個體化(簡單的findViewById()方法)。這樣便可以將資料對應到各個組件上了。但是按鈕為了響應點擊事件,需要為它添加點擊監聽 器,這樣就能捕獲點擊事件。至此一個自訂的listView就完成了,現在讓我們回過頭從新審視這個過程。系統要繪製ListView了,他首先獲得要 繪製的這個列表的長度,然後開始繪製第一行,怎麼繪製呢?調用getView()函數。在這個函數裡面首先獲得一個View(實際上是一個 ViewGroup),然後再執行個體並設定各個組件,顯示之。好了,繪製完這一行了。那再繪製下一行,直到繪完為止。 listView中動作的監聽可以參考 http://stephen830.iteye.com/blog/1141394 不規則ListView 參考 http://www.phpyuandi.com/3571.htmlhttp://blog.sina.com.cn/s/blog_629b701e0100x338.htmlhttp://www.2cto.com/kf/201310/248500.html(先看)http://www.tuicool.com/articles/MBvABzhttp://blog.sina.com.cn/s/blog_5da93c8f0100wx4v.html
BaseAdapter深入學習,不規則listview