2014-07-19 62 views
0

我正在創建一個使用首選項的Android應用程序。我使用的偏好類型之一是EditTextPreference,它帶有一個默認的Android對話框模式,帶有文本輸入以及OK和Cancel按鈕。Android EditTextPreference - 清除存儲的值

我想給用戶清除列表首選項中的所有存儲值的選項,我無法找到清除此EditTextPreference的值的方法。

我現在可以測試的方式是通過在OnCreate方法覆蓋上清除它,但將來我會在用戶單擊按鈕時清除它。

因此,問題:如何清除Android中EditTextPreference的存儲值?我想刪除任何正在保存的值

每次啓動應用程序(即使從內存清除後),我輸入的任何最新值都會返回。

+0

我明白了,在大多數情況下,我也希望如此,這是在接下來的時間地點要保存的信息用戶使用該應用程序。但是如果我想清除所有的價值將應用程序作爲新的應用程序呢?我希望這個儲值被消除。 –

回答

1

只需在SharedPreference編輯器上調用clear即可。如果你想SharedPreference的管理方便,無需編寫任何樣板代碼,我有很好的小庫EasyPrefs

private void clearPrefs() { 
    SharedPreferences settings = getSharedPreferences(YOUR_PREFS_NAME, 0); 
    SharedPreferences.Editor editor = settings.edit(); 
    editor.clear().apply(); 
} 
+0

這似乎工作得很好!如果我從手機中退出應用程序,價值似乎會恢復,但如果我從項目中重新運行它,它似乎會按照我希望的那樣清除值。我可以繼續從這一點開始工作,但如果您有其他建議,我很樂意聽到他們的意見。感謝你!這對我來說是一個巨大的進步! –

+0

希望它爲我工作。在過去的5個小時裏,我嘗試了這個網站上的所有解決方案,但是我無法實現它的工作。 Android如何做到這一點應該如此簡單SOOO困難? –