藉助自定義適配器(CheckBox和TextView)實現自定義ListView。據我所知,當ListView項目被回收利用時(比如項目被刪除或不在顯示等等),內容視圖就會被使用。但是,我對這個contentView的理解是模糊的。我們應該在BaseAdapter中利用getView方法的contentView方法
有人可以解釋我們應該利用BaseAdapter.getView()的contentView參數的方式,以及當listView中的項目被刪除時會發生什麼?
感謝
藉助自定義適配器(CheckBox和TextView)實現自定義ListView。據我所知,當ListView項目被回收利用時(比如項目被刪除或不在顯示等等),內容視圖就會被使用。但是,我對這個contentView的理解是模糊的。我們應該在BaseAdapter中利用getView方法的contentView方法
有人可以解釋我們應該利用BaseAdapter.getView()的contentView參數的方式,以及當listView中的項目被刪除時會發生什麼?
感謝
你可能想看看這個視頻,它在這裏所有的覆蓋。 http://www.google.com/events/io/2010/sessions/world-of-listview-android.html
如果你看一個正常的列表視圖,你會發現,所有條目看起來相同(=具有相同的佈局)。另外請記住,從XML構建佈局很昂貴(充氣)。
ListView
在這裏做什麼很簡單。當您向下滾動列表時,一個條目將隱藏在頂部,而一個條目將顯示在底部。爲了防止此時新顯示的條目出現昂貴的XML通脹,您將從剛剛隱藏的條目中獲得佈局。它獲得了所有舊數據,但不必從頭開始構建,這對於提高效率來說更好。只需填寫新的數據即可。這就是整個想法。
只是檢查contentView
不null
(在這種情況下,Android有你的一箇舊觀點),在這種情況下,只需添加數據的新條目。如果它爲空,則從頭開始擴展布局。