2012-08-30 90 views
1

我很明顯在做錯事。在我的閃屏,當它決定去,我有以下代碼活動:在啓動時加載SharedPreferences時出錯

SharedPreferences getPrefs = PreferenceManager 
         .getDefaultSharedPreferences(getBaseContext()); 
       boolean disclamerChecked = getPrefs.getBoolean("disclamer", false); 
       boolean medicalScreeningChecked = getPrefs.getBoolean("screening", false); 

所以,我想讀2布爾值,應該是假的應用程序的安裝和 當設置爲做到這一點應該是永久真實的。

現在,在我的活動(Disclamer只是在一瞬間)我有以下的事情:

private void setDisclamerPropertie() { 
    // TODO Auto-generated method stub 
    startupPrefs= getSharedPreferences("startupPrefs", MODE_WORLD_WRITEABLE); 
    SharedPreferences.Editor editor = startupPrefs.edit(); 
    editor.putBoolean("disclamer", true); 
    editor.commit(); 
    return; 
} 

調用此功能在上創建功能,當「接受」按鈕,點擊它應該保存共享偏好(或者至少這是我需要發生的事情)。

按鈕的作品,它進入下一個活動和一個人去旁邊一遍,但是當我重新加載應用程序,似乎布爾不會保存和應用再次爲確認要求。

所以,在這裏我錯了,以書面的喜好,什麼是正確的閱讀喜好失蹤?

回答

2

您從默認共享偏好閱讀,但寫入一個名爲(「startupPrefs」),所以有2種獨立的共享偏好

的情況下,
+0

哎喲...確實,我已經改變了從「sturtupPrefs」中讀取的負載,現在就可以了。 TNX! – Balkyto

2

您正在使用不同的喜好。

startupPrefs= getSharedPreferences("startupPrefs", MODE_WORLD_WRITEABLE); 

這也應該是:

startupPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());