字符串到sharedpreference android

时间:2012-12-22 10:59:59

标签: android string sharedpreferences

我的应用程序有一个登录屏幕。 (微调器,编辑文本,按钮),我想将微调器选定的项目和输入的文本存储到共享的首选项。在应用程序的任何地方使用。

Button lgnbutton;
EditText lgnfield;
Spinner lgnspinner;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);

lgnbutton = (Button) findViewById(R.id.loginbutton);
lgnfield = (EditText) findViewById(R.id.loginfield);
lgnspinner = (Spinner) findViewById(R.id.loginspinner);





lgnbutton.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
        // TODO Auto-generated method stub

        String ID = lgnfield.getText().toString();
        String Type = lgnspinner.getSelectedItem().toString();


        Intent myIntent = new Intent(LoginActivity.this, MainActivity.class);
        LoginActivity.this.startActivity(myIntent);
    }
});
}    
}

也可以跳过loginactivity并继续进行主要活动。

2 个答案:

答案 0 :(得分:2)

在微调器上单击

调用此方法
   SavePreferences("spinner_item",  mySpinner.getSelectedItem().toString());

SavePreferences方法体。

     private void SavePreferences(String key, String value){
        SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
        SharedPreferences.Editor editor = sharedPreferences.edit();
        editor.putString(key, value);
        editor.commit();
       }

调用此方法加载微调器项。

private void LoadPreferences(){
    SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
    String strSavedMem = sharedPreferences.getString("spinner_item", "");
     }

答案 1 :(得分:1)

您可以像在SharedPreferences

中一样存储登录详细信息和微调器选定项目
lgnbutton.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
        // TODO Auto-generated method stub

         ID = lgnfield.getText().toString();
         Type = lgnspinner.getSelectedItem().toString();

        SharedPreferences.Editor prefsEditor = loginpreferences.edit();
        prefsEditor.putString("ID", ID);
        prefsEditor.putString("Type", Type);
        prefsEditor.commit();

        Intent myIntent = new Intent(LoginActivity.this, MainActivity.class);
        LoginActivity.this.startActivity(myIntent);
    }
});

并在onCreate LoginActivity SharedPreferences检查MainActivity中是否存在登录详细信息,如果是,则移至SharedPreferences loginpreferences; String ID="",Type=""; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); loginpreferences = this.getSharedPreferences("loginPrefs", MODE_WORLD_READABLE); ID = loginpreferences.getString("ID", ""); Type = loginpreferences.getString("Type", ""); if(!ID.equalsIgnoreCase("") && !Type.equalsIgnoreCase("")) { //move to MainActivity }else { //stay in LoginActivity }

{{1}}