1.运行后界面图

Android '记住密码'功能

2.主要代码:

  2.1 activity_main.xml(2个TextView 2个EditText 1个CheckBox以及1个Button):    

 1   <TextView 2         android:id="@+id/tvAccount" 3         android:layout_width="wrap_content" 4         android:layout_height="wrap_content" 5         android:layout_alignBaseline="@+id/etAccount" 6         android:layout_alignBottom="@+id/etAccount" 7         android:text="@string/tvAccount" 8         android:textAppearance="?android:attr/textAppearanceLarge" /> 9 10     <EditText11         android:id="@+id/etAccount"12         android:layout_width="wrap_content"13         android:layout_height="wrap_content"14         android:layout_alignParentRight="true"15         android:layout_alignParentTop="true"16         android:layout_marginTop="18dp"17         android:ems="10" />18 19     <EditText20         android:id="@+id/etPass"21         android:layout_width="wrap_content"22         android:layout_height="wrap_content"23         android:layout_alignBottom="@+id/tvPass"24         android:layout_alignLeft="@+id/etAccount"25         android:ems="10"26         android:inputType="textPassword" >27 28         <requestFocus />29     </EditText>30 31     <TextView32         android:id="@+id/tvPass"33         android:layout_width="wrap_content"34         android:layout_height="wrap_content"35         android:layout_alignLeft="@+id/tvAccount"36         android:layout_below="@+id/etAccount"37         android:layout_marginTop="29dp"38         android:text="@string/tvPass"39         android:textAppearance="?android:attr/textAppearanceLarge" />40 41     <CheckBox42         android:id="@+id/cbRemPass"43         android:layout_width="wrap_content"44         android:layout_height="wrap_content"45         android:layout_alignLeft="@+id/tvPass"46         android:layout_below="@+id/etPass"47         android:layout_marginTop="20dp"48         android:text="@string/cbRemPass" />49 50     <Button51         android:id="@+id/btnLogin"52         android:layout_width="wrap_content"53         android:layout_height="wrap_content"54         android:layout_alignBottom="@+id/cbRemPass"55         android:layout_alignRight="@+id/etPass"56         android:text="@string/btnLogin" />
activity_main.xml

  2.2 MainActivity.java

    主要用了SharedPreferences来保存密码

    2.2.1 定义SharedPreferences

private SharedPreferences mSettings = null;

    2.2.2 button按钮的点击监听事件

 1 private void setListener() { 2         // TODO Auto-generated method stub 3         btnLogin.setOnClickListener(new OnClickListener() { 4             public void onClick(View v) { 5                 // TODO Auto-generated method stub 6                 // 判断复选框是否被选中 7                 if (cbRemPass.isChecked()) { 8                     mSettings = getSharedPreferences(PREFS_NAME, MODE_PRIVATE); 9                     Editor edit = mSettings.edit();10                     //标记11                     edit.putBoolean("isKeep", true);12                     //记录用户名13                     edit.putString("username", etAccount.getText().toString());14                     edit.putString("password", etPass.getText().toString());15                     edit.commit();16                 }else{17                     mSettings = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);18                     Editor edit = mSettings.edit();19                     //标记20                     edit.putBoolean("isKeep", true);21                     //记录用户名22                     edit.putString("username", "");23                     edit.putString("password", "");24                     edit.commit();25                 }    26             }27         });28     }
Button按钮的监听事件

    2.2.3 第二次启动获取保存的密码的关键代码

 1 private void getData() { 2         // TODO Auto-generated method stub 3         mSettings = getSharedPreferences(PREFS_NAME, MODE_PRIVATE); 4         if(mSettings.getBoolean("isKeep", false)){ 5             etAccount.setText(mSettings.getString("username", "")); 6             etPass.setText(mSettings.getString("password", "")); 7         }else{ 8             etAccount.setText(""); 9             etPass.setText("");10         }11     }
获取密码的关键代码

    2.2.4 getData函数的引用要放到onCreate方法和onResume方法中

3. demo

https://github.com/cnfanhua/A-RemPass

更多相关文章

  1. Android移动操作系统源代码
  2. Android Studio系列(二)使用Android Studio开发/调试整个android系
  3. Android开发常用代码片段(三)
  4. Android 性能优化之Java(Android)代码优化 (三)
  5. Android常用代码之普通及系统权限静默安装APK
  6. android 常用代码
  7. 常用的android权限配置和常用工具代码
  8. Android终于公布源代码
  9. Android常用代码

随机推荐

  1. macos编译opencv+contrib+nonfree 4.2 fo
  2. GreenDao 在 Android(安卓)Studio 中的配
  3. Android(安卓)selector 的shape、gradien
  4. 【andorid】android项目导入eclipse出错
  5. 解决Android帧动画在Oncreate中启动只显
  6. java.lang.NullPointerException 错误
  7. Android移动开发,传输数据到电脑本地服务
  8. android解析json(以解析時时价为例),java也
  9. Android(安卓)Get,Post,AsyncHttpClient
  10. android封装Toast