广告
返回顶部
首页 > 资讯 > 移动开发 >Android实现简易登陆注册逻辑的实例代码
  • 337
分享到

Android实现简易登陆注册逻辑的实例代码

2024-04-02 19:04:59 337人浏览 薄情痞子
摘要

大家好,今天给大家带来Android制作登录和注册功能的实现,当我们面临制作登录和注册功能的实现时,我们需要先设计登录界面的布局和注册界面的布局,做到有完整的思路时才开始实现其功能效

大家好,今天给大家带来Android制作登录和注册功能的实现,当我们面临制作登录和注册功能的实现时,我们需要先设计登录界面的布局和注册界面的布局,做到有完整的思路时才开始实现其功能效果会更好。

activity_login


<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/tv_username"
        android:layout_width="wrap_content"
        android:layout_height="40dp"
        android:layout_marginStart="40dp"
        android:layout_marginTop="100dp"
        android:gravity="center_vertical"
        android:text="账号:"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/tv_passWord"
        android:layout_width="wrap_content"
        android:layout_height="40dp"
        android:layout_marginStart="40dp"
        android:gravity="center_vertical"
        android:text="密码:"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toBottomOf="@id/tv_username" />

    <EditText
        android:id="@+id/ed_username"
        android:layout_width="300dp"
        android:layout_height="40dp"
        android:layout_marginTop="100dp"
        app:layout_constraintLeft_toRightOf="@id/tv_username"
        app:layout_constraintTop_toTopOf="parent" />

    <EditText
        android:id="@+id/ed_password"
        android:layout_width="300dp"
        android:inputType="textPassword"
        android:layout_height="40dp"
        app:layout_constraintLeft_toRightOf="@id/tv_password"
        app:layout_constraintTop_toBottomOf="@id/ed_username" />

    <Button
        android:id="@+id/bu_login"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="300dp"
        android:text="登录"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toLeftOf="@id/bu_reGISter"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        android:id="@+id/bu_register"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="300dp"
        android:text="注册"
        app:layout_constraintLeft_toRightOf="@id/bu_login"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

LoginActivity


package com.jld.exam;

import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

public class LoginActivity extends AppCompatActivity {
    EditText ed_username;
    EditText ed_password;
    Button bu_login;
    Button bu_register;
    String username;
    String password;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

        ed_username = findViewById(R.id.ed_username);
        ed_password = findViewById(R.id.ed_password);
        bu_login = findViewById(R.id.bu_login);
        bu_register = findViewById(R.id.bu_register);

        //登录按钮监听
        bu_login.setOnClickListener(v -> {
            username = ed_username.getText().toString();
            password = ed_password.getText().toString();

            //登陆的简单逻辑
            if (username.equals("")) {
                Toast.makeText(LoginActivity.this, "请输入用户名", Toast.LENGTH_SHORT).show();
            } else if (password.equals("")) {
                Toast.makeText(LoginActivity.this, "请输入密码", Toast.LENGTH_SHORT).show();
            } else if (!username.equals("root") || !password.equals("123456")) {
                Toast.makeText(LoginActivity.this, "用户名或密码错误", Toast.LENGTH_SHORT).show();
            } else {
                Intent intent = new Intent(LoginActivity.this, MainActivity.class);
                startActivity(intent);
            }
        });

        //注册按钮监听
        bu_register.setOnClickListener(v -> {
            Intent intent = new Intent(LoginActivity.this, RegisterActivity.class);
            startActivity(intent);
        });
    }

}

activity_main


<?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:orientation="vertical">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="商品列表"
        android:layout_marginBottom="30dp"
        android:gravity="center_horizontal"/>
    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/recycler"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
</LinearLayout>

MainActivity


package com.jld.exam;

import android.graphics.Color;
import android.os.Bundle;
import android.widget.LinearLayout;

import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;

public class MainActivity extends AppCompatActivity {

    RecyclerViewAdapter recyclerViewAdapter;
    private final int[] icno = {R.drawable.clock, R.drawable.signal, R.drawable.box,
            R.drawable.second, R.drawable.elephone, R.drawable.ff, R.drawable.notebook, R.drawable.mark, R.drawable.yx,
            R.drawable.shop, R.drawable.theme, R.drawable.xl,};
    private final String[] name = {"时钟", "信号", "宝箱", "秒钟", "大象", "FF", "记事本", "书签", "印象", "商店", "主题", "迅雷"};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);//GridLayoutManager
        GridLayoutManager gridLayoutManager = new GridLayoutManager(MainActivity.this, 3);//创建recyclerview
        RecyclerView recyclerView = findViewById(R.id.recycler);//设定布局管理器
        recyclerView.setLayoutManager(gridLayoutManager);//创建适配器
        recyclerViewAdapter = new RecyclerViewAdapter(icno, name);
        recyclerView.setAdapter(recyclerViewAdapter);//设定适配器
    }
}

activity_register


<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
    tools:context=".RegisterActivity">

    <TextView
        android:id="@+id/textView0"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:gravity="center"
        android:text="用户注册"
        android:textSize="30sp"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="100dp"
        android:layout_height="40dp"
        android:drawableStart="@drawable/account"
        android:gravity="center_vertical"
        android:text="用户名:"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toBottomOf="@id/textView0" />

    <EditText
        android:id="@+id/editText1"
        android:layout_width="300dp"
        android:layout_height="40dp"
        android:layout_weight="10"
        android:autofillHints=""
        android:gravity="center_horizontal"
        android:inputType="text"

        app:layout_constraintLeft_toRightOf="@id/textView1"
        app:layout_constraintTop_toBottomOf="@id/textView0" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="100dp"
        android:layout_height="40dp"
        android:layout_weight="2"
        android:drawableStart="@drawable/password"
        android:gravity="center_vertical"
        android:text="新密码:"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toBottomOf="@id/textView1" />

    <EditText
        android:id="@+id/editText2"
        android:layout_width="300dp"
        android:layout_height="40dp"
        android:layout_weight="10"
        android:autofillHints=""
        android:gravity="center_horizontal"
        android:inputType="textPassword"
        app:layout_constraintLeft_toRightOf="@id/textView2"
        app:layout_constraintTop_toBottomOf="@id/editText1" />

    <TextView
        android:id="@+id/textView5"
        android:layout_width="100dp"
        android:layout_height="40dp"
        android:drawableStart="@drawable/phone"
        android:gravity="center_vertical"
        android:text="手机电话:"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toBottomOf="@id/textView2" />

    <EditText
        android:id="@+id/editText5"
        android:layout_width="300dp"
        android:layout_height="40dp"
        android:layout_weight="10"
        android:autofillHints=""
        android:gravity="center_horizontal"
        android:inputType="phone"
        app:layout_constraintLeft_toRightOf="@id/textView5"
        app:layout_constraintTop_toBottomOf="@id/editText2" />


    <TextView
        android:id="@+id/textView7"
        android:layout_width="100dp"
        android:layout_height="40dp"
        android:drawableStart="@drawable/email"
        android:gravity="center_vertical"
        android:text="E_mail:"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toBottomOf="@id/editText5" />

    <EditText
        android:id="@+id/editText7"
        android:layout_width="300dp"
        android:layout_height="40dp"
        android:layout_weight="10"
        android:autofillHints=""
        android:gravity="center_horizontal"
        android:inputType="textEmailAddress"
        app:layout_constraintLeft_toRightOf="@id/textView7"
        app:layout_constraintTop_toBottomOf="@id/editText5" />

    <TextView
        android:id="@+id/textView8"
        android:layout_width="100dp"
        android:layout_height="40dp"
        android:drawableStart="@drawable/gender"
        android:gravity="center_vertical"
        android:text="性别:"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toBottomOf="@id/textView7" />

    <RadioGroup
        android:id="@+id/radioGroup8"
        android:layout_width="300dp"
        android:layout_height="40dp"
        android:layout_weight="10"
        android:gravity="center_vertical"
        android:orientation="horizontal"
        app:layout_constraintLeft_toRightOf="@id/textView8"
        app:layout_constraintTop_toBottomOf="@id/editText7">

        <RadioButton
            android:id="@+id/radioButton1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="女" />

        <RadioButton
            android:id="@+id/radioButton2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="男" />
    </RadioGroup>


    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="40dp"
        android:text="保存"
        app:layout_constraintEnd_toStartOf="@id/button2"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@id/radioGroup8" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="40dp"
        android:text="取消"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@id/button1"
        app:layout_constraintTop_toBottomOf="@id/radioGroup8" />
</androidx.constraintlayout.widget.ConstraintLayout>


RegisterActivity


package com.jld.exam;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class RegisterActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register);
    }
}

recyc_item


<?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="wrap_content"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/iv_image"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_gravity="center_horizontal"
        android:contentDescription="TODO"
        android:scaleType="centerInside"
        android:src="@drawable/ic_launcher_background" />

    <TextView
        android:id="@+id/tv_desc"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:hint="销售价格"
        android:textSize="14sp" />

</LinearLayout>



RecyclerViewAdapter


package com.jld.exam;

import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder> {
    private final int[] icno;
    private final String[] desc;

    public RecyclerViewAdapter(int[] icno, String[] desc) {
        this.icno = icno;
        this.desc = desc;
    }

    @NonNull
    @Override
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.recyc_item, parent, false);
        return new ViewHolder(view);
    }

    @Override
    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
        holder.imageView.setImageResource(icno[position]);
        holder.textView.setText(desc[position]);
    }

    @Override
    public int getItemCount() {
        return icno.length;
    }

    //ViewHolder
    public static class ViewHolder extends RecyclerView.ViewHolder {
        View item;
        ImageView imageView;
        TextView textView;

        public ViewHolder(@NonNull View itemView) {
            super(itemView);
            item = itemView;
            imageView = itemView.findViewById(R.id.iv_image);
            textView = itemView.findViewById(R.id.tv_desc);
        }
    }
}

总结

到此这篇关于Android实现简易登陆注册逻辑的文章就介绍到这了,更多相关Android登陆注册逻辑内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Android实现简易登陆注册逻辑的实例代码

本文链接: https://www.lsjlt.com/news/128625.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android实现简易登陆注册逻辑的实例代码
    大家好,今天给大家带来Android制作登录和注册功能的实现,当我们面临制作登录和注册功能的实现时,我们需要先设计登录界面的布局和注册界面的布局,做到有完整的思路时才开始实现其功能效...
    99+
    2022-11-12
  • android实现简易登录注册界面及逻辑设计
    本文实例为大家分享了android实现登录注册界面及逻辑设计,供大家参考,具体内容如下 1. 第一步 新建文件(相信各位码农一定会这一步)略。 2. 第二步 登录注册界面设计 登录界...
    99+
    2022-11-12
  • SpringBoot实现网站的登陆注册逻辑记录
    目录技术列表:用户登录逻辑:用户注册逻辑:参考文献:总结该文章主要是为了整理之前学习项目中的知识点,并进行一定程度的理解。 技术列表: SpringBoot MyS...
    99+
    2022-11-12
  • Android Studio连接MySql实现登录注册的示例代码
    小编给大家分享一下Android Studio连接MySql实现登录注册的示例代码,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体如下:一、创建工程创建一个空白...
    99+
    2023-06-15
  • Redis实现登录注册的示例代码
    目录1. 引言2. 流程图及代码实现2.1 生成验证码保存到Redis2.2 登录验证2.3 请求拦截器3. 总结1. 引言 在传统的项目中,用户登录成功,将用户信息保存在sessi...
    99+
    2022-11-13
  • django+vue实现注册登录的示例代码
    注册 前台利用vue中的axios进行传值,将获取到的账号密码以form表单的形式发送给后台。 form表单的作用就是采集数据,也就是在前台页面中获取用户输入的值。numberVa...
    99+
    2022-11-12
  • MybatisPlus实现逻辑删除的示例代码
    目录1、什么是逻辑删除2、使用说明:3、如何使用Mybatis Plus实现逻辑删除4、测试1、什么是逻辑删除 逻辑删除是名义上的删除,就是对要要删除的数据打上一个删除标记,在逻辑上...
    99+
    2023-05-19
    MybatisPlus逻辑删除 Mybatis 逻辑删除
  • vue实现登录注册模板的示例代码
    模板1:  login.vue <template> <p class="login"> <el-tabs v-model="ac...
    99+
    2022-11-12
  • MyBatis-Plus实现逻辑删除的示例代码
    目录一、引言二、具体实现步骤一:首先我们需要配置未删除、已删除分别标识的状态码是什么,这里采用的yml格式。步骤二:在实体类对应的字段上加上注解@TableLogic即可。步骤三:测...
    99+
    2022-11-13
  • Vue简易注册页面+发送验证码功能的实现示例
    目录1. 效果展示2. 增强版验证码及邮件推送管理(见以后的博客)3. 大致思路4. 前期准备5. 前端代码6. 后端1. 效果展示 2. 增强版验证码及邮件推送管理(见以后的博...
    99+
    2022-11-12
  • Android Studio连接MySql实现登录注册(附源代码)
    目录一、创建工程二、引入Mysql驱动包三、编写数据库和dao以及JDBC相关代码四、编写页面和Activity相关代码五、运行测试效果本文主要介绍了Android Studio连接...
    99+
    2022-11-12
  • Python实现简易凯撒密码的示例代码
    目录概念及原理实现过程破解原理及实现概念及原理 根据百度百科上的解释,凯撒密码是一种古老的加密算法。 密码的使用最早可以追溯到古罗马时期,《高卢战记》有描述恺撒曾经使用密码来传递信息...
    99+
    2022-11-11
  • 基于Java实现QQ登录注册功能的示例代码
    目录前言实现代码登录页面注册页面效果展示前言 本文主要应用的技术有:GUI、JDBC、多线程 实现的功能具体如下: 1、登录功能 2、注册功能 3、是否隐藏密码的选择以及实现功能 4...
    99+
    2022-11-13
  • C#实现简易画图板的示例代码
    编程环境 VS2019、C# 画板功能演示 实现简单画图 打开功能 可打开jpg格式的文件 保存功能 可将绘画的内容保存为jpg文件 颜色选择功能 用户可自由选择所需的颜色...
    99+
    2022-11-12
  • Qt实现简易计时器的示例代码
    目录一、项目介绍二、项目基本配置三、UI界面设计四、主程序实现4.1 mainwindow.h头文件4.2 mainwindow.cpp源文件五、效果演示一、项目介绍 计时器实现四个...
    99+
    2022-11-13
  • Pythonselenium+cookie实现免密登陆的示例代码
    目录获取cookies:携带cookies实现免密登陆:今天爬取airbnb的租房数据时,遇到了登陆问题。自己动手解决了一下。 我们知道,http是无状态的,那么网页如何实现用户登陆...
    99+
    2022-11-13
  • Android ContentProvider的实现及简单实例代码
    一、概念及说明 ContentProvider定义: 内容提供者是一个Android应用的基础模块,提供内容给这个应用,它们封装数据和提供它给应用通过这个ContentRe...
    99+
    2022-06-06
    Android
  • android实现简单的画画板实例代码
    直接看代码,注释都写清楚了 代码如下:public class MainActivity extends Activity { private ImageView ...
    99+
    2022-06-06
    画板 Android
  • Django实现简单登录的示例代码
    目录创建django项目使用模型的url.py加载静态文件页面跳转创建数据库模型提交表单提交ajax提交创建django项目 创建项目的命令行语句: django-admin st...
    99+
    2022-11-12
  • javaWeb连接数据库实现简单登陆注册功能的全过程
    目录实现步骤jar包数据库的驱动以及用户密码jsp页面注册页面登陆成功和失败的页面工具类登陆的类注册的类两个映射路径思路登陆注册总结实现步骤 创建maven项目 配置Tomcat 这...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作