2017-05-26 64 views
0

,當我從偏好特林GET值出現該錯誤:串不能轉換爲整數錯誤

public static final String PREF_KEY_INTERVAL = "pref_key_interval"; 
settings = PreferenceManager.getDefaultSharedPreferences(getActivity()); 
int curInterval = settings.getInt(PREF_KEY_INTERVAL, 1); 

還值得一提的是,應用程序正常工作模擬設備,但真正上一個崩潰的。我已經檢查過幾次返回的類型。什麼是線索,或者我的IDE只是瘋了?

偏好XML:

<Preference 
    android:key="pref_key_interval" 
    android:title="@string/pref_key_interval_title" 
    android:summary="@string/pref_key_interval_summary" 
    android:defaultValue="5"/> 

回答

0

android:defaultValue = "5"String。所以你要投一個Stringinteger。試試這個

int curInterval = Integer.parseInt(settings.getString(PREF_KEY_INTERVAL, "1")); 
0

儘量不要使用DefaultSharedPreferences。

final String eulaKey = "mykey"; 
Context mContext = getApplicationContext(); 
mPrefs = mContext.getSharedPreferences("myAppPrefs", Context.MODE_PRIVATE); 
SharedPreferences.Editor editor = mPrefs.edit(); 
editor.putBoolean(eulaKey, true); 
editor.commit(); 

Android getDefaultSharedPreferences

相關問題