【Android】记住密码功能的实现

来源:互联网 发布:如何学好美工 编辑:程序博客网 时间:2024/05/21 22:56

功能说明:像QQ一样实现记住密码的功能,再次打开应用不再输入密码。若取消再次打开应用即可。

效果图:

源代码:

MainActivity.java

package com.example.remember;import android.app.Activity;import android.content.SharedPreferences;import android.content.SharedPreferences.Editor;import android.os.Bundle;import android.view.View;import android.widget.CheckBox;import android.widget.EditText;import android.widget.Toast;public class MainActivity extends Activity {private EditText et_username;private EditText et_password;private CheckBox cb_remember;private SharedPreferences config;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);config=getSharedPreferences("config",MODE_PRIVATE);et_username=(EditText) findViewById(R.id.et_username);et_password=(EditText) findViewById(R.id.et_password);cb_remember=(CheckBox) findViewById(R.id.cb_remember);//是否记住了密码boolean isChecked =config.getBoolean("isChecked", false);if(isChecked){et_username.setText(config.getString("username", ""));et_password.setText(config.getString("password", ""));}cb_remember.setChecked(isChecked);}//登录public void onClick(View view){Editor edit=config.edit();String username=et_username.getText().toString();String password=et_password.getText().toString();boolean isChecked=cb_remember.isChecked();//存储CheckBox的状态edit.putBoolean("isChecked", isChecked);if(isChecked){edit.putString("username",username).putString("password", password);}else {edit.remove("username").remove("password");}//提交到本地edit.commit();Toast.makeText(this, "登录成功", 0).show();}}


/记住密码/res/layout/activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"><EditText     android:id="@+id/et_username"    android:layout_width="match_parent"    android:layout_height="wrap_content"/><EditText     android:id="@+id/et_password"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:inputType="textPassword"/><CheckBox     android:id="@+id/cb_remember"     android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="记住密码"/><Button     android:id="@+id/btn_login"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:layout_gravity="center_horizontal"    android:onClick="onClick"    android:text="登录"/></LinearLayout>



0 0
原创粉丝点击