我有在android應用程序中的測驗,其中包含用戶點擊其中一個問題的列表並回答它,並通過單擊下一個按鈕轉到下一個問題或現在基於答案回到列表問題給出正確/錯誤的列表問題號碼突出顯示爲綠色或紅色,灰色是其默認顏色。所有這一切都按我的選擇正常工作,但我想保持突出顯示的狀態,以及用戶退出應用程序時不同的活動。已更新listview與共享偏好
請大家幫助我,因爲我已經因爲這個失去了一個正式的截止日期?
我有在android應用程序中的測驗,其中包含用戶點擊其中一個問題的列表並回答它,並通過單擊下一個按鈕轉到下一個問題或現在基於答案回到列表問題給出正確/錯誤的列表問題號碼突出顯示爲綠色或紅色,灰色是其默認顏色。所有這一切都按我的選擇正常工作,但我想保持突出顯示的狀態,以及用戶退出應用程序時不同的活動。已更新listview與共享偏好
請大家幫助我,因爲我已經因爲這個失去了一個正式的截止日期?
我假設你有一堂課,我們可以稱之爲Question
,你將有一個boolean correctAnswer
,你設置爲true/false
。現在讓您的課程Question
實施Serializable
,以便您可以將這些Questions
保存在FileSystem
中,或者您可以將它們存儲在SQLiteDatabase
中,並且不需要實施Serializable
(您的選擇)。
現在,即使重新啓動應用程序,你有這樣的數據,你的應用程序一致的,因此你可以加載的問題清單,只是檢查boolean correctAnswer
以設定正確的顏色爲每個Question
在ListView
。
編輯:我只是你有三個國家爲你的答案。 所以不是boolean correctAnswer
您可以添加int answered
其中
沒有回答= 0
回答錯誤= 1
回答正確= 2個
使用SharedPreferences爲,
拯救:
SharedPreferences settings;
SharedPreferences.Editor editor;
public static final String PREFS_NAME = "app_pref";
public static final String KEY_p_id = "KEY_test";
settings = getSharedPreferences(PREFS_NAME, 0);
editor = settings.edit();
editor.putString(Login_screen.KEY_test, values.get(0));
editor.commit();
要刪除:
editor.remove("KEY_test").commit();
根據您的要求在您的應用程序使用它。
如何使用'SharedPreference'保存狀態?檢查我的答案。 –