在我的Application类中,我有以下内容:
public void loadPrefs(){
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
Boolean soundValue = sharedPrefs.getBoolean("SOUND", false);
}
public void savePrefs(String key, boolean value){
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
Editor edit = sharedPrefs.edit();
edit.putBoolean(key, value);
edit.commit();
}
据我所知一切都好。
现在在扩展SurfaceView的主类中,我有以下内容:
myApp mySettings = (myApp)getContext().getApplicationContext();
然后我可以像这样保存值:(再次从我的surfaceView活动)
myPlanSettings.savePrefs("SOUND", false);}
然而,我无法解决的是如何读取值回来,所以我可以设置一个局部变量,像这样:
Boolean thisValue = (the value from the shared preferences).
感谢您的帮助
试试这个
public Object loadPrefs(String key,String defaul){
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
return sharedPrefs.get(key,default);
}
在获取值
时将其转换为类型基本用法:
boolean b=(Boolean)loadPrefs("value","default value")