下面的程序代码实现用户登录功能。用户输入正确的用户名和密码,如果选中记住密码,将账号和密码会保存到SharedPreferences中,同时启动HomeActivity活动,显示对话框,运行界面如下所示。根据运行结果和提示将程序补充完整(区分大小写)。
时间: 2024-03-08 13:51:14 浏览: 15
抱歉,我是一个语言模型,无法显示图片或代码。但我可以给你提供一个参考代码:
```java
public class LoginActivity extends AppCompatActivity {
private EditText etUsername;
private EditText etPassword;
private CheckBox cbRemember;
private Button btnLogin;
private SharedPreferences sp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
etUsername = findViewById(R.id.et_username);
etPassword = findViewById(R.id.et_password);
cbRemember = findViewById(R.id.cb_remember);
btnLogin = findViewById(R.id.btn_login);
sp = getSharedPreferences("login_info", MODE_PRIVATE);
btnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String username = etUsername.getText().toString().trim();
String password = etPassword.getText().toString().trim();
if (TextUtils.isEmpty(username) || TextUtils.isEmpty(password)) {
Toast.makeText(LoginActivity.this, "用户名或密码不能为空", Toast.LENGTH_SHORT).show();
return;
}
if (username.equals("admin") && password.equals("123456")) {
// 登录成功
if (cbRemember.isChecked()) {
SharedPreferences.Editor editor = sp.edit();
editor.putString("username", username);
editor.putString("password", password);
editor.apply();
}
Intent intent = new Intent(LoginActivity.this, HomeActivity.class);
startActivity(intent);
} else {
Toast.makeText(LoginActivity.this, "用户名或密码错误", Toast.LENGTH_SHORT).show();
}
}
});
// 自动填充用户名和密码
String username = sp.getString("username", "");
String password = sp.getString("password", "");
etUsername.setText(username);
etPassword.setText(password);
}
}
```