2011-01-27 58 views
0

在我的Android應用程序中,我有一個列表視圖與一堆項目與複選框。如果選中複選框,則會計算一個值。但是,應用程序終止後,列表視圖會自動重置,所有複選框都將被取消選中。我該怎麼做,所以當應用程序被完全終止,複選框選中/未選中狀態保存?我擡頭各種方法,但都顯得相當複雜的初學者:(終止後保存

回答

1

正如其他人建議,應保存您的複選框,設置SharedPreferences的基本思路是,在您onPause()方法讀取用戶界面的狀態並將這些值寫入首選項。然後在onResume()中,您將這些值讀回並重新填充UI。

Data Storage鏈接的示例將偏好的保存在onStop(),但是在android Application fundamentals狀態:

注意,在上表中的Killable列。它表示系統是否可以在方法返回後的任何時間終止託管活動的進程,而不執行活動代碼的另一行。三種方法(onPause()onStop()onDestroy())標記爲「是」。因爲onPause()是三個中的第一個,所以它是唯一一個在進程被殺之前保證被調用的 - onStop()onDestroy()可能不是。因此,您應該使用onPause()將任何持久性數據(如用戶編輯)寫入存儲。

因此,我建議寫信給onPause()而不是onStop()