2017-05-26 61 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

相关问题