zoukankan      html  css  js  c++  java
  • 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>
  • 相关阅读:
    【算法学习笔记】76.DFS 回溯检测 SJTU OJ 1229 mine
    【算法学习笔记】75. 动态规划 棋盘型 期望计算 1390 畅畅的牙签盒(改)
    【算法学习笔记】74. 枚举 状态压缩 填充方案 SJTU OJ 1391 畅畅的牙签袋(改)
    【算法学习笔记】73.数学规律题 SJTU OJ 1058 小M的机器人
    【算法学习笔记】72.LCS 最大公公子序列 动态规划 SJTU OJ 1065 小M的生物实验1
    【算法学习笔记】71.动态规划 双重条件 SJTU OJ 1124 我把助教团的平均智商拉低了
    【算法学习笔记】70.回文序列 动态规划 SJTU OJ 1066 小M家的牛们
    【算法学习笔记】69. 枚举法 字典序处理 SJTU OJ 1047 The Clocks
    【算法学习笔记】68.枚举 SJTU OJ 1272 写数游戏
    【算法学习笔记】67.状态压缩 DP SJTU OJ 1383 畅畅的牙签袋
  • 原文地址:https://www.cnblogs.com/CCCrunner/p/11781995.html
Copyright © 2011-2022 走看看