2011-12-12 63 views
0

我有一個Android ListView,其行包含一個複選框,每行四個文本視圖。這是一個多選列表視圖。默認情況下,列表視圖以已經檢查的一些行開始。您可以選中或取消選中任何一行。當用戶單擊行(而不是複選框)時,所有行的複選框都會恢復爲默認值。安卓ListView行復選框被清除回列表項的默認值單擊

  1. 這是怎麼發生的?
  2. 我該如何阻止它?

UPDATE

我使用的是默認ListViewSimpleAdapterArrayList<String, Object>

回答

0

所以我的代碼玩弄後,我有什麼造成的默認值恢復的一個想法,如何阻止它。

由於項目正在重新繪製,因此發佈了默認值恢復。由於點擊突出顯示,並且(de)激活列表項目,所以發生了重新繪製。爲什麼碰巧所有列表項都超出了我的範圍,但是這導致列表視圖使用它們的默認值重新繪製它們。

這意味着要阻止這種情況發生,我應該修改源列表被點擊時(或「未選中」,如果它已被選中)「選擇」。然後當重新繪製時,複選框將被適當地檢查(或未選中)。

0

我認爲,如果你可以使用CheckedTextview而不是複選框,它會保持它的選中或取消選中狀態,使用複選框,我們需要編寫代碼,保持選中/取消選中狀態