当我的应用程序启动时,登录活动会出现。它包含一个“下次自动登录”复选框。如果选中了该复选框,我希望在下一次应用程序启动时启动另一个活动并将用户的用户名和密码发送到该活动。
如何实现这个功能?
如何实现这个功能?
//Saving the values
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("username",username);
editor.putString("password",password);
editor.putBoolean("isChecked", isCheckBoxChecked);
editor.commit();
//Retrieving the values
SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
if(sharedPreferences.getBoolean("isChecked"))
{
//Do whatever you need to do if it's checked
}
SharedPreferences
来保存您的用户名和密码。当您的活动开始时,请检查它们是否存储在Shared Preferences
中。您可以在谷歌上找到许多好的Shared Preferences
示例。 pref = getSharedPreferences(PREFS_NAME, 0);
intent = new Intent(context, LaunchingActivity.class);
isChecked = pref.getBoolean("isChecked", false);
if(isChecked)
startActivity(intent);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if(username.equalsIgnoreCase("") && password.equalsIgnoreCase("")) {
username = userEdtTxt.getText().toString();
password = pwdEdtTxt.getText().toString();
}
if(checkBox.isChecked()) {
editor = pref.edit();
editor.putString("username", username);
editor.putString("password", password);
editor.putString("isChecked", true);
editor.commit();
}
startActivity(intent);
}
});
然后在启动活动中执行以下操作:
SharedPreferences pref = getSharedPreferences(PREFS_NAME, 0);
String username = pref.getString("username", "");
String password = pref.getString("password", "");