我有一个专门用于管理sharedpreferences的类,但是我不断收到一个NPE我的电话。继承人的类,java.lang.NullPointerException:试图调用虚拟方法'android.content.res.Resources android.content.Context.getResources()'
public class UserManager extends Activity{
Context mContext;
UserManager(Context mContext){
this.mContext = mContext;
}
public boolean getFromMatches(String userUid, String matchUid){
SharedPreferences spMatches = mContext.getSharedPreferences(getString(R.string.match_key), Context.MODE_PRIVATE);
if(spMatches.contains(userUid + matchUid)){
return true;
}else{
return false;
}
}
}
这就是从我的主要活动通过:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_screen);
userManager = new UserManager(getApplicationContext());
}
的NPE在该行获得:
SharedPreferences spMatches = mContext.getSharedPreferences(getString(R.string.match_key), Context.MODE_PRIVATE);
http://stackoverflow.com/a/2184151/5515371检查这个 –
@SpecialSnowflake使用this.mContext而不是mContext在行'mContext.getSharedPreferences(getString(R.string.match_key),Context.MODE_PRIVATE);' – Debojyoti
你是否在onCreate()之前调用getFromMatches()? – X3Btel