zoukankan      html  css  js  c++  java
  • Android 简单登陆 涉及 Button CheckBox TextView EditText简单应用

    GitHub地址:https://github.com/1165863642/LoginDemo

    直接贴代码<?xml version="1.0" encoding="utf-8"?<LinearLayout

    xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:orientation="vertical"
        tools:context=".MainActivity">
    
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="用户名:"
                android:textSize="20sp"
                android:textStyle="bold"/>
    
            <EditText
                android:id="@+id/et_user"
                android:layout_width="200dp"
                android:layout_height="wrap_content"/>
        </LinearLayout>
    
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:orientation="horizontal">
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="密    码:"
                android:textSize="20sp"
                android:textStyle="bold"/>
    
            <EditText
                android:id="@+id/et_pass"
                android:layout_width="200dp"
                android:layout_height="wrap_content"/>
        </LinearLayout>
    
        <CheckBox
            android:id="@+id/cb_remember"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:layout_marginLeft="65dp"
            android:layout_marginTop="10dp"
            android:text="记住用户名"
            android:textStyle="bold"/>
    
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
    
            <Button
                android:id="@+id/btn_login"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="登陆"/>
    
            <Button
                android:id="@+id/btn_cancel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="30dp"
                android:text="取消"/>
        </LinearLayout>
    </LinearLayout><?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:orientation="vertical"
        tools:context=".MainActivity">
    
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="用户名:"
                android:textSize="20sp"
                android:textStyle="bold"/>
    
            <EditText
                android:id="@+id/et_user"
                android:layout_width="200dp"
                android:layout_height="wrap_content"/>
        </LinearLayout>
    
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:orientation="horizontal">
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="密    码:"
                android:textSize="20sp"
                android:textStyle="bold"/>
    
            <EditText
                android:id="@+id/et_pass"
                android:layout_width="200dp"
                android:layout_height="wrap_content"/>
        </LinearLayout>
    
        <CheckBox
            android:id="@+id/cb_remember"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:layout_marginLeft="65dp"
            android:layout_marginTop="10dp"
            android:text="记住用户名"
            android:textStyle="bold"/>
    
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
    
            <Button
                android:id="@+id/btn_login"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="登陆"/>
    
            <Button
                android:id="@+id/btn_cancel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="30dp"
                android:text="取消"/>
        </LinearLayout>
    </LinearLayout>
     1 package com.example.a11658.logindemo;
     2 
     3 import android.content.SharedPreferences;
     4 import android.os.Bundle;
     5 import android.support.v7.app.AppCompatActivity;
     6 import android.text.Editable;
     7 import android.text.TextUtils;
     8 import android.text.TextWatcher;
     9 import android.view.View;
    10 import android.widget.Button;
    11 import android.widget.CheckBox;
    12 import android.widget.EditText;
    13 import android.widget.Toast;
    14 
    15 public class MainActivity extends AppCompatActivity {
    16 
    17     Button btn_login, btn_cancel;
    18     EditText et_user, et_pass;
    19     CheckBox cb_remember;
    20     SharedPreferences spf;
    21 
    22     @Override
    23     protected void onCreate(Bundle savedInstanceState) {
    24         super.onCreate(savedInstanceState);
    25         setContentView(R.layout.activity_main);
    26         initView();
    27     }
    28 
    29     //初始化控件
    30     private void initView() {
    31         spf = getSharedPreferences("test", MODE_PRIVATE);
    32         //关联控件
    33         btn_cancel = findViewById(R.id.btn_cancel);
    34         btn_login = findViewById(R.id.btn_login);
    35         et_pass = findViewById(R.id.et_pass);
    36         et_user = findViewById(R.id.et_user);
    37         cb_remember = findViewById(R.id.cb_remember);
    38         et_user.setText(spf.getString("username", "111"));
    39         //点击事件
    40         btn_login.setOnClickListener(new View.OnClickListener() {
    41             @Override
    42             public void onClick(View v) {
    43                 //登陆
    44                 //1.获取用户名密码
    45                 String username = et_user.getText().toString().trim();
    46                 String password = et_pass.getText().toString().trim();
    47                 //2.判断是否记住用户名
    48                 if (cb_remember.isChecked()) {  //判断CheckBox选中状态
    49                     spf.edit().putString("username", username).commit();
    50                 } else {
    51                     spf.edit().clear().commit();
    52                 }
    53 
    54                 //3.判断用户名密码是否正确
    55                 if (!TextUtils.isEmpty(username) && !TextUtils.isEmpty(password)) {
    56                     if (username.equals("user") && password.equals("pass")) {
    57                         Toast.makeText(MainActivity.this, "登陆成功", Toast.LENGTH_SHORT).show();
    58                     } else {
    59                         Toast.makeText(MainActivity.this, "用户名密码不正确", Toast.LENGTH_SHORT).show();
    60                     }
    61                 } else {
    62                     Toast.makeText(MainActivity.this, "输入框不能为空", Toast.LENGTH_SHORT).show();
    63                 }
    64             }
    65         });
    66 
    67         btn_cancel.setOnClickListener(new View.OnClickListener() {
    68             @Override
    69             public void onClick(View v) {
    70                 finish();
    71             }
    72         });
    73 
    74         et_pass.addTextChangedListener(new TextWatcher() {
    75             @Override
    76             public void beforeTextChanged(CharSequence s, int start, int count, int after) {
    77                 //文字改变前
    78                 Toast.makeText(MainActivity.this,"请输入", Toast.LENGTH_SHORT).show();
    79             }
    80 
    81             @Override
    82             public void onTextChanged(CharSequence s, int start, int before, int count) {
    83                 //正在输入
    84                 Toast.makeText(MainActivity.this,"正在输入", Toast.LENGTH_SHORT).show();
    85             }
    86 
    87             @Override
    88             public void afterTextChanged(Editable s) {
    89                 //输入结束后
    90                 Toast.makeText(MainActivity.this,"输入结束后", Toast.LENGTH_SHORT).show();
    91             }
    92         });
    93     }
    94 }

    效果图::

    代码地址:https://github.com/1165863642/LoginDemo

    涉及到的一些知识点 不懂的可以咨询我 扣:1165863642  共同学习

  • 相关阅读:
    [Leetcode] Combination Sum II
    [Leetcode] Search in Rotated Sorted Array
    [LeetCode] Number of 1 Bits
    [Jobdu] 题目1373:整数中1出现的次数(从1到n整数中1出现的次数)
    [Jobdu] 题目1377:缓变序列
    [LeetCode] Add Two Numbers
    [LeetCode] Repeated DNA Sequences
    [LeetCode] Reverse Bits
    [Jobdu] 题目1139:最大子矩阵
    [LeetCode] Clone Graph
  • 原文地址:https://www.cnblogs.com/MrChen-/p/10295382.html
Copyright © 2011-2022 走看看