本文实例为大家分享了Android实现记住密码功能的具体代码,供大家参考,具体内容如下
LoginActivity.java
package com.wangdeqiang.www.chatwithrobot.BroadcastBestPractice; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.preference.PreferenceManager; import android.view.View; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; import android.widget.Toast; import com.wangdeqiang.www.chatwithrobot.R; import static com.wangdeqiang.www.chatwithrobot.R.id.account; /** * @author */ public class LoginActivity extends BaseActivity { private SharedPreferences pref; private SharedPreferences.Editor editor; private EditText accountEdit; private EditText passwordEdit; private Button login; private CheckBox rememberPass; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); pref = PreferenceManager.getDefaultSharedPreferences(this); accountEdit = (EditText) findViewById(account); passwordEdit = (EditText) findViewById(R.id.password); rememberPass = (CheckBox) findViewById(R.id.remember_pass); login = (Button) findViewById(R.id.login); boolean isRemeber = pref.getBoolean("remember_password",false); if(isRemeber) { //将账号和密码都设置到文本框中 String account = pref.getString("account",""); String password = pref.getString("password",""); accountEdit.setText(account); passwordEdit.setText(password); rememberPass.setChecked(true); } login.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String account = pref.getString("account","").toString(); String password = pref.getString("password","").toString(); //如果账号和密码是admin和123456,就认为登陆成功 if (account.equals("admin") && password.equals("123456")) { editor = pref.edit(); if (rememberPass.isChecked()) { editor.putBoolean("remember",false); editor.putString("account",account); editor.putString("password",password); } else { editor.apply(); } editor.commit(); Intent intent = new Intent(LoginActivity.this,Main3Activity.class); startActivity(intent); finish(); } else { Toast.makeText(LoginActivity.this,"密码或者账号错误",Toast.LENGTH_SHORT).show(); } } }); } }
activity_login.xml
<?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:stretchColumns="1" > <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="60dp" android:orientation="horizontal"> <TextView android:layout_width="90dp" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="Account:" android:textSize="18sp" /> <EditText android:id="@+id/account" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_weight="1" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="60dp" android:orientation="horizontal"> <TextView android:layout_width="90dp" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="Password" android:textSize="18sp" /> <EditText android:id="@+id/password" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_weight="1" android:inputType="textPassword" /> </LinearLayout> </LinearLayout> <TableRow> <CheckBox android:id="@+id/remember_pass" android:layout_height="wrap_content" /> <TextView android:layout_height="wrap_content" android:text="Remeber password" /> </TableRow> <Button android:id="@+id/login" android:layout_height="wrap_content" android:layout_span="2" android:text="Login" /> </TableLayout>