使用Android Studio,编写一个用户登录的程序,要求登录的用户名和密码存入到SharedPreferences
时间: 2024-03-13 18:43:15 浏览: 141
Android通过SharedPreferences实现自动登录记住用户名和密码功能
5星 · 资源好评率100%
好的,下面是一个简单的示例程序,可以帮助你实现将用户登录信息存储到SharedPreferences中。
首先在布局文件中添加两个EditText和一个Button,用于输入用户名和密码以及点击登录按钮。
```xml
<EditText
android:id="@+id/et_username"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入用户名" />
<EditText
android:id="@+id/et_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="请输入密码" />
<Button
android:id="@+id/btn_login"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="登录" />
```
然后在Activity中获取EditText和Button的引用,并设置Button的点击事件,实现将用户名和密码存储到SharedPreferences中。
```java
public class LoginActivity extends AppCompatActivity {
private EditText mEtUsername;
private EditText mEtPassword;
private Button mBtnLogin;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
mEtUsername = findViewById(R.id.et_username);
mEtPassword = findViewById(R.id.et_password);
mBtnLogin = findViewById(R.id.btn_login);
mBtnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 获取输入的用户名和密码
String username = mEtUsername.getText().toString();
String password = mEtPassword.getText().toString();
// 获取SharedPreferences对象
SharedPreferences preferences = getSharedPreferences("login_info", MODE_PRIVATE);
// 将用户名和密码存储到SharedPreferences中
SharedPreferences.Editor editor = preferences.edit();
editor.putString("username", username);
editor.putString("password", password);
editor.apply();
// 登录成功,跳转到主界面
Intent intent = new Intent(LoginActivity.this, MainActivity.class);
startActivity(intent);
finish();
}
});
}
}
```
在上面的示例代码中,我们使用了SharedPreferences的getString()和putString()方法,分别用于从SharedPreferences中获取值和存储值。其中,第一个参数是键值对的键,第二个参数是默认值。
在使用SharedPreferences存储数据时,我们需要指定一个名称(例如上例中的"login_info"),这个名称可以是任意的字符串,用于标识不同的SharedPreferences对象。在存储数据时,我们需要通过SharedPreferences对象的edit()方法获取一个Editor对象,然后使用Editor对象的putString()方法将键值对存储到SharedPreferences中,最后通过apply()方法提交修改。
阅读全文