2010-09-06 97 views
0

我得到一个空指针异常android sharedpreferences:空指针异常

SharedPreferences mPrefs;

protected void onPause() { 
    super.onPause(); 

SharedPreferences.Editor ed = mPrefs.edit(); 
    ed.putString("names", names); 
    ed.putString("numbers", numbers); 
    ed.commit(); 
} 

@Override 
protected void onResume() { 
    // TODO Auto-generated method stub 
    super.onResume(); 

    SharedPreferences mPrefs = getSharedPreferences("xyz", 0); 
    mPrefs.getString("names", ""); 
    mPrefs.getString("numbers", ""); 

} 
+1

你的'NullPointerException'发生了什么? – CommonsWare 2010-09-06 21:44:21

+0

stacktrace会很有趣。 – 2010-09-06 22:00:49

回答

1

我不是专家,但我会尽力帮忙。

保存SharedPreferences的格式是这样的例子:

SharedPreferences settings = getSharedPreferences("MY_PREFS", MODE_PRIVATE); 
SharedPreferences.Editor editor = settings.edit(); 
editor.putBoolean("audio_playing", true); 
editor.commit(); 

,并检索SharedPreferences格式是这样的:

SharedPreferences settings = getSharedPreferences("MY_PREFS", MODE_PRIVATE);   
boolean audio_playing = settings.getBoolean("audio_playing", false); 

所以我重写你有这样的事情:

SharedPreferences mPrefs = getSharedPreferences("xyz", 0); 
SharedPreferences.Editor ed = mPrefs.edit(); 
ed.putString("names", names); 
ed.putString("numbers", numbers); 
ed.commit(); 

然后检索值:

SharedPreferences mPrefs = getSharedPreferences("xyz", 0); 
String name = mPrefs.getString("names",""); 
String number = mPrefs.getString("numbers),""); 

我希望这会有所帮助。如果没有,噢,我尝试了。