Android Studio实现简易登录界面制作

作者:x97666 时间:2023-08-25 08:49:42 

想要制作一个简易的登录界面非常容易,总体上来说就是UI布局、给定id、新建跳转的页面、以及输入账号密码的获取与判断,那么接下来就开始制作吧!

Android Studio实现简易登录界面制作

1.首先就是Activity中的组件布局,这个就不一一列举了!自己把两个EditText和一个Button摆好就ok了,像按钮的点击效果可以自己设计一下(默认状态是什么颜色,按下去是什么颜色)。

Android Studio实现简易登录界面制作

2.再一个就是要给定控件一个id

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/img_1"
    android:orientation="vertical">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="300dp"
            android:layout_marginTop="160dp"
            android:orientation="vertical"
            android:padding="30dp"
            android:gravity="center">
            <EditText
                android:layout_width="match_parent"
                android:layout_height="60dp"
                android:id="@+id/EDit_username"
                android:hint="账户名"
                android:maxLines="1"
                android:textColor="#000000"/>
 
            <EditText
                android:layout_width="match_parent"
                android:layout_height="60dp"
                android:id="@+id/EDit_password"
                android:layout_marginTop="15dp"
                android:hint="账户名"
                android:maxLines="1"
                android:textColor="#000000"/>
 
            <Button
                android:layout_width="200dp"
                android:layout_height="60dp"
                android:layout_marginTop="30dp"
                android:id="@+id/btn_login"
                android:text="登录"
                android:backgroundTint="@color/btn_xiaoguo"
                android:textSize="20sp"/>
        </LinearLayout>
 
</LinearLayout>
</LinearLayout>

3.然后就是要在Mainactivity.java中写代码了,需要申明控件id,绑定控件id及登录按钮的点击事件(判断是否是自己设定的密码,判断是否达到一定的长度)。  对了,还有需要定义存账号密码的类型名称。

package com.example.denlu;
 
import androidx.appcompat.app.AppCompatActivity;
 
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
public class MainActivity extends AppCompatActivity {
 
    private EditText mEDit_password;      
    private EditText mEDit_username;
    private Button mbtn_login;
    private String zhanhao;  //申明存入账号的变量
    private String mima;   //申明存入密码的变量
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        mEDit_username = findViewById(R.id.EDit_username);   //绑定账号Edit Text的id
        mEDit_password = findViewById(R.id.EDit_password);  //绑定密码Edit Text的id
        mbtn_login = findViewById(R.id.btn_login);   //绑定按钮Button的id

4.好了,现在要做的就是写按钮的点击事件了;那么在这之前需要先新建一个跳转之后的界面。之前也发过新建一个Activity的方法。

Android Studio实现简易登录界面制作

5.然后写点击事件;那么点击事件要怎么写,首先肯定是要把账号与密码都提取出来存入自定义的String变量,需要用到  .getText().toString()  这两个函数;既然提取出来了那么下一步就好办了,直接用几个if else if  写几个判断即可。

package com.example.denlu;
 
import androidx.appcompat.app.AppCompatActivity;
 
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
public class MainActivity extends AppCompatActivity {
 
    private EditText mEDit_password;
    private EditText mEDit_username;
    private Button mbtn_login;
    private String zhanghao; //申明存入账号的变量
    private String mima;   //申明存入密码的变量
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        mEDit_username = findViewById(R.id.EDit_username);     //绑定账号Edit Text的id
        mEDit_password = findViewById(R.id.EDit_password);     //绑定密码Edit Text的id
        mbtn_login = findViewById(R.id.btn_login);             //绑定按钮Button的id
        mbtn_login.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View view) {
         zhanghao = mEDit_username.getText().toString();   //将账号取出来存入自定义的zhanhao变量
                mima = mEDit_password.getText().toString();       //将密码取出来存入自定义的mima变量
                if (zhanghao.length()<3||zhanghao.length()>7){    //if判断输入账号的长度是不是在3-7位数之间,如果不是则弹窗提示
                    Toast.makeText(MainActivity.this, "账号长度应为3-7位数之间", Toast.LENGTH_SHORT).show();
                }else if (mima.length()<6||mima.length()>6){     //if判断输入账号的长度是不是6位数,如果不是则弹窗提示
                    Toast.makeText(MainActivity.this,"请输入6位数的密码",Toast.LENGTH_SHORT).show();
                }
                if (zhanghao.equals("abcdef")&&mima.equals("123456")){     //如果输入的账号密码是“abcdef”  “123456” 则实行页面跳转
                    Intent intent = new Intent(MainActivity.this,dengluMainActivity.class);
                    startActivity(intent);
                }else{
                    Toast.makeText(MainActivity.this,"账号或密码输入错误",Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
}

嗯!就是这样了,可能有些我没注意讲到,但是大概就是这样了!

来源:https://blog.csdn.net/x97666/article/details/120583579

标签:Android,Studio,登录界面
0
投稿

猜你喜欢

  • Java多线程Callable接口实现代码示例

    2021-08-06 14:29:01
  • 文件路径正确,报java.io.FileNotFoundException异常的原因及解决办法

    2022-01-28 04:52:57
  • C#使用iTextSharp封装的PDF文件操作类实例

    2023-05-16 22:26:52
  • Java @Deprecated注解的作用及传递性

    2023-08-11 12:55:05
  • Java8 HashMap键与Comparable接口小结

    2023-11-29 10:10:31
  • SpringBoot实战之高效使用枚举参数(原理篇)案例详解

    2022-02-10 23:54:23
  • Java基础之重载(Overload)与重写(Override)详解

    2023-07-31 08:10:25
  • Android 实现单线程轮循机制批量下载图片

    2022-11-05 11:03:45
  • 在Linux上运行C#的方法

    2023-03-06 00:28:39
  • 线程阻塞唤醒工具 LockSupport使用详解

    2023-11-29 17:16:10
  • java组件commons-fileupload文件上传示例

    2022-08-16 02:42:56
  • C++ 双向循环链表类模版实例详解

    2022-10-29 18:04:49
  • C#实现ini文件读写操作

    2022-02-26 11:01:19
  • Spring案例打印机的实现过程详解

    2023-12-02 12:28:47
  • MyBatis使用动态表或列代码解析

    2023-06-13 07:57:40
  • C# 打开电子邮件软件的具体方法

    2022-07-02 10:53:07
  • SpringCloud如何使用Eureka实现服务之间的传递数据

    2022-02-17 18:47:37
  • Java java.sql.Timestamp时间戳案例详解

    2023-11-10 13:50:47
  • Java 面试题基础知识集锦

    2022-05-25 00:01:58
  • 聊聊关于Java方法重写的反思

    2022-10-26 00:36:12
  • asp之家 软件编程 m.aspxhome.com