2011-06-30 82 views
0

我有ListView重新呈現和更改列表視圖視圖內的值的問題。每個單元格都有交互式元素,數值已設置,不幸的是一旦屏幕出現,這些數字就會隨機重新渲染!Android商店listview視圖到ArrayList

我已經發現Listview需要有一個擴展視圖類,允許存儲該位置的值。

我需要傳遞幾個值,到目前爲止,我所看到的所有例子都只顯示了一個方法,每個單元格有一個值(指http://commonsware.com/Android/excerpt.pdf),我正在尋求如何爲我的應用程序存儲值的幫助。

我有一個「總數」計數,和一個單獨的計數,我可以通過列表視圖單元格內的按鈕增加和減少值。我需要將這些單獨的總計和值存儲在視圖中的該位置內。我想我會有一個方法/構造函數,只是包含這些值,但在這種語法似乎是超級。不會允許這個覆蓋。

Insight已確認。如果沒有代碼,這不清楚,確定只是讓我知道。但是,如果你已經熟悉這個問題以及解決這個問題的最普通的方法,那也會很棒。

回答

2

Listview可以回收它的視圖,所以如果你沒有使用適合你的用途的自定義適配器顯式地顯示你正在顯示的值,那很可能是它出錯了。無論何時您將列表視圖中的視圖滾動出屏幕,都會丟棄其中的所有值,並將其粘貼到新數據的頂部。

因此,您可能需要的是一個自定義適配器,用於存儲要顯示的數字;這裏是一個很好的開始從更好的理解它:http://developer.android.com/videos/index.html#v=wDBM6wVEO70

+0

我明白了,我只是不知道如何實現它呢!我在某些活動中的一些列表視圖正在使用內部具有額外功能的自定義適配器......但我不確定我需要添加到這些功能以使它們存儲數據!一個數組也許? – CQM

+0

好呀;如果您已經使用了arraylist適配器,並且您已經擁有了在構造函數中傳遞的數據的數組列表,那麼可以在適配器子類中保存對其的引用,以便您直接更改數據。否則,你可以定義你自己的數組來保存c的數據。 – MrJre