2011-10-25 52 views
0

我有一個ListView,我根據索引填充不同視圖。這可以通過覆蓋getView方法正常工作,但我想知道這是否是完成此操作的最佳方式?我問的主要原因是當我滾動某些視圖似乎被搞砸了,比如我設置了錯誤的背景。ArrayAdapter的getView方法是在ListView中插入自定義視圖的最佳方式嗎?

也許這會有所幫助,如果有人可以解釋什麼convertView是完全正確的方式來實現它。因爲我擔心我的觀點出現錯誤背景的原因是因爲我正在使用convertView進入該功能並且它不正確。

+1

我推薦我的答案[列表如何工作](http://stackoverflow.com/questions/7738527/getting-an-issue-while-checking-the-dynamically-generated-checkbox-through-list/7739006 #7739006)。也許這會幫助你更好地理解列表和適配器... – Knickedi

回答

1

關於convertView也許this部分來自Commonsware的書籍可能會對您有所幫助(如果您想跳轉,請參閱第107頁)。

+0

感謝您的鏈接,Commonsware的書籍在解釋ListViews如何工作以及如何使用getView方面非常有幫助。我解決了我的問題,謝謝。 – Bobbake4

2

當您回收視圖時,您需要認識到您正在處理的當前convertView(當您處理的是convertView != null)已處於某種狀態(例如,對於不同元素具有特定背景)。因此,您需要確保相應地設置視圖的每個部分並假定沒有默認值。

想想這樣,當您向下滾動時,頂視圖將移出可見性並作爲出現在底部的新視圖重用 - 如果您沒有爲此視圖更改任何內容,它將看起來完全正確與以前一樣。

+0

這也非常有幫助 – Bobbake4

相關問題