2010-09-06 64 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),""); 

我希望這會有所幫助。如果沒有,噢,我嘗試了。