2011-06-19 49 views
3

我有一個應用程序,它將具有不同語言的UI文本。我不希望將它保存在strings.xml中,因爲我希望用戶能夠更改它們(而不依賴於手機的區域設置)。確定是否以前設置了Android偏好

我已經設置了一個首選項來閱讀這個。默認情況下,我希望UI獲取語言環境值,但如果用戶更改了UI lang首選項,我希望它使用它。

是否有任何方法可以確定以前是否設置了首選項?問題是,getInt讓我設置了一個默認值,所以我不能檢查(例如)uiLang == null以確定是否在之前設置了首選項。

SharedPreferences settings = getPreferences(MODE_PRIVATE); 
//If uiLang has not been set before, then lets use the locale. 
uiLang = settings.getInt("uiLang", 1); //English (=1) es default 
myUI = new UIText(uiLang); 
myTextView.setText(myUI.title); 

回答