当我的应用程序启动时,将显示登录活动。它包含复选框“下次签名”。我想在下次启动应用程序时启动另一个Activity,如果选中复选框,则将用户的用户名和密码发送给它。
我该如何实现?
答案 0 :(得分:4)
您可能希望在SharedPreferences中保存用户名和复选框值。 之后,您可以在应用程序启动时检索它们。
示例:
//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
}
答案 1 :(得分:1)
使用SharedPreferences
保存您的用户名和密码。当您的活动开始时,请检查它们是否存储在Shared Preferences
中。您可以在google中找到许多Shared Preferences
的好例子。
答案 2 :(得分:0)
在您的登录活动中,执行以下操作,
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", "");