Android 使用共享首选项时遇到空点异常
我有一个活动在不操作共享首选项的情况下工作。添加后,单击按钮后出现空指针错误 我认为我使用共享偏好的方式是不正确的。任何人都可以帮助指出问题所在?我应该在使用前使用它吗Android 使用共享首选项时遇到空点异常,android,Android,我有一个活动在不操作共享首选项的情况下工作。添加后,单击按钮后出现空指针错误 我认为我使用共享偏好的方式是不正确的。任何人都可以帮助指出问题所在?我应该在使用前使用它吗 public class BanknameActivity extends Activity { String [] bank_name; String selected_bank_config; SharedPreferences prefs; @Override protected void onCreate(Bund
public class BanknameActivity extends Activity {
String [] bank_name;
String selected_bank_config;
SharedPreferences prefs;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_bankname);
// Show the Up button in the action bar.
// setupActionBar();
bank_name = getResources().getStringArray(R.array.bankname);
ListView lv1 = (ListView) findViewById(R.id.bankname_listview);
lv1.setChoiceMode(1); // CHOICE_MODE_SINGLE
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, bank_name);
lv1.setAdapter(adapter);
lv1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapter, View view, int position, long arg) {
//selected_bank_config = "Citi";
prefs.edit().putString(selected_bank_config, "citi").commit();
return_to_config(view);
}
});
}
此代码运行良好。
我希望你会感激它
此代码运行良好。
我希望您会感激。您从不初始化Pref。它将始终为空。类似于
prefs=context.getSharedReferences(APP\u SHARED\u prefs,Activity.MODE\u PRIVATE)代码>但在另一个活动中,我也没有初始化它,而是读取了edit(),它工作正常,没有错误。您知道如何在onCreate()?context.getSharedReferences(APP_SHARED_PREFS,activity.MODE_PRIVATE)中初始化它吗;我记得我有这个。。奇怪。。今晚让我再检查一遍。你从来没有初始化过prefs。它将始终为空。类似于prefs=context.getSharedReferences(APP\u SHARED\u prefs,Activity.MODE\u PRIVATE)代码>但在另一个活动中,我也没有初始化它,而是读取了edit(),它工作正常,没有错误。您知道如何在onCreate()?context.getSharedReferences(APP_SHARED_PREFS,activity.MODE_PRIVATE)中初始化它吗;我记得我有这个。。奇怪。。今晚让我再查一下。
public void return_to_config(View view){
Intent intent = new Intent(this, ConfigActivity.class);
startActivity(intent);
this.finish();
}
**you need to initialize your shared Preferences. Without initialization it will always be null.**
yo need to do following stuff:
// mPrefs=getSharedPreferences("Preferences Name",mode);
mPrefs=getSharedPreferences("FBPref",0);
Editor edit=mPrefs.edit();
edit.putString("UserName", "");
edit.putString("UserId","");
edit.putString("EmailId","");
edit.commit();