用户登录记住密码

来源:互联网 发布:vs能写php 编辑:程序博客网 时间:2024/05/19 03:16

要求:当用户选中了记住密码复选框,并成功登录一次之后,这个时候如果再重新启动登陆界面,之前输入的用户名和密码就会显示在文本框中。


1.创建主界面

代码如下:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:Android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.administrator.xzx.MainActivity">

    <EditText
        android:id="@+id/zhanghao"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="账号"/>
    <EditText
        android:id="@+id/mima"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/zhanghao"
        android:hint="密码"/>
    <Button
        android:id="@+id/denglu"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="登录"
        android:layout_centerHorizontal="true"
        android:onClick="login"
        android:layout_below="@id/mima"/>

    <CheckBox
        android:id="@+id/jizhumima"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/mima"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:hint="记住密码"
         />
</RelativeLayout>

2.创建编译交互代码

代码如下:

package com.example.administrator.zsq;

import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.support.v4.content.SharedPreferencesCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;

import static com.example.administrator.xzx.R.id.zhanghao;

public class MainActivity extends AppCompatActivity {
    private EditText zhanghao;
    private EditText mima;
    private SharedPreferences sharedPreferences;
    private CheckBox jizhumima;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        huoqu();
        sharedPreferences = getSharedPreferences("data", Context.MODE_PRIVATE);
        boolean isRemember = sharedPreferences.getBoolean("data", false);
        if (isRemember) {
            String hao = sharedPreferences.getString("hao", "");
            String ma = sharedPreferences.getString("ma", "");
            zhanghao.setText(hao);
            mima.setText(ma);
            jizhumima.setChecked(true);
        }
    }

    private void huoqu() {
        zhanghao = (EditText) findViewById(R.id.zhanghao);
        mima = (EditText) findViewById(R.id.mima);
        jizhumima = (CheckBox) findViewById(R.id.jizhumima);
    }

    public void login(View view) {
        String hao = zhanghao.getText().toString().trim();
        String ma = mima.getText().toString();
        if ("admin".equals(hao) && "123456".equals(ma)) {
            SharedPreferences.Editor editor = sharedPreferences.edit();
            if (jizhumima.isChecked()) {
                editor.putBoolean("data", true);
                editor.putString("hao", hao);
                editor.putString("ma", ma);
            } else {
                editor.clear();
            }
            editor.commit();
            Intent intent = new Intent(this,a.class);
            startActivity(intent);
            finish();
        }
    }
}

3.创立登陆成功界面

package com.example.administrator.zsq;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;

/**
 * Created by Administrator on 2017/4/7.
 */

public class a extends AppCompatActivity{
    @Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_a);
    }


}




0 0
原创粉丝点击