簡體   English   中英

如何使用共享首選項

[英]How to use shared preferences

我想保存用戶輸入的登錄值以保存在sharedpreferences並在另一個頁面中檢索它。 但問題是當我去數據檢索頁面應用程序崩潰時。 請幫我。

登錄活動.java

 SharedPreferences loginData = getSharedPreferences("userInfo", 
 Context.MODE_PRIVATE);
 SharedPreferences.Editor editor = loginData.edit();
 editor.putString("password", passwordbox.getText().toString());
 editor.putString("userName", usernamebox.getText().toString());

 editor.apply();

數據檢索頁面

public class messagewebview extends AppCompatActivity {
    TextView testing_name;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_messagewebview);
        SharedPreferences loginData = getSharedPreferences("userInfo", Context.MODE_PRIVATE);
        String name = loginData.getString("userName", "");
        String pw = loginData.getString("password","");
        String msg = "Saved User Name: " + name + "\nSaved Password: " + pw;
        testing_name.setText(msg);

    }
}

testing_name未初始化。

您的變量“testing_name”未初始化。 在開始使用變量之前,必須對其進行初始化。

在您的代碼中進行以下更改。

    public class messagewebview extends AppCompatActivity { 

        TextView testing_name; 

        @Override protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_messagewebview);
          // Provide a appropriate view id
          testing_name = findViewById(R.id.testing_name);
          SharedPreferences loginData = getSharedPreferences("userInfo", Context.MODE_PRIVATE); 
          String name = loginData.getString("userName", ""); 
          String pw = loginData.getString("password","");
           String msg = "Saved User Name: " + name + "\nSaved Password: " + pw;
            testing_name.setText(msg);

        }

        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM