使用共享首选项时遇到空点异常

时间:2013-08-04 15:57:50

标签: android

我的活动无需操作共享首选项即可运行。添加后,单击按钮后出现空指针错误。

我认为我使用共享偏好的方式不正确。任何人都可以帮助指出问题是什么?我应该在使用之前使用new()吗?

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);                                                  
                }
    });

}

以下是我的代码的一部分:

    public void return_to_config(View view){
       Intent intent = new Intent(this, ConfigActivity.class);
       startActivity(intent);
       this.finish();
}

1 个答案:

答案 0 :(得分:1)

**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();

此代码工作正常。  我希望你会欣赏它。