【Android】学习day05|简单登陆页面的实现|监听代码
实现效果如下图所示


实现代码【部分】
MainActivity.java

1 package com.example.app02;
2
3 import androidx.appcompat.app.AppCompatActivity;
4
5 import android.annotation.SuppressLint;
6 import android.content.Intent;
7 import android.os.Bundle;
8 import android.view.View;
9 import android.widget.Button;
10
11 public class MainActivity extends AppCompatActivity {
12 //先声明空间
13 private Button mBtnTextView;
14 private Button mBtnButton;
15 private Button mBtnEditText;
16 @SuppressLint("MissingInflatedId")
17 @Override
18 protected void onCreate(Bundle savedInstanceState) {
19 super.onCreate(savedInstanceState);
20 setContentView(R.layout.activity_main);
21 mBtnTextView = findViewById(R.id.btn_textview);
22 mBtnTextView.setOnClickListener(new View.OnClickListener() {
23 @Override
24 public void onClick(View view) {
25 // 跳转到TextView演示界面
26 Intent intent = new Intent(MainActivity.this, TextViewActivity.class);
27 startActivity(intent);
28 }
29 });
30 mBtnButton= findViewById(R.id.btn_button);
31 mBtnButton.setOnClickListener(new View.OnClickListener() {
32 @Override
33 public void onClick(View view) {
34 // 跳转到Button演示界面
35 Intent intent=new Intent(MainActivity.this,ButtonActivity.class);
36 startActivity(intent);
37 }
38 });
39 mBtnEditText=findViewById(R.id.btn_edittext);
40 mBtnEditText.setOnClickListener(new View.OnClickListener() {
41 @Override
42 public void onClick(View view) {
43 // 跳转到EditView演示界面
44 Intent intent=new Intent(MainActivity.this,EditTextActivity.class);
45 startActivity(intent);
46 }
47 });
48 }
49 }
EditTextActivity.java

1 package com.example.app02;
2
3 import androidx.appcompat.app.AppCompatActivity;
4
5 import android.os.Bundle;
6 import android.text.Editable;
7 import android.text.TextWatcher;
8 import android.util.Log;
9 import android.view.View;
10 import android.widget.Button;
11 import android.widget.EditText;
12 import android.widget.Toast;
13
14 public class EditTextActivity extends AppCompatActivity {
15 private Button mBtnLogin;
16 private EditText mEtUserName;
17
18 @Override
19 protected void onCreate(Bundle savedInstanceState) {
20 super.onCreate(savedInstanceState);
21 setContentView(R.layout.activity_edit_text);
22 mBtnLogin=findViewById(R.id.btn_login);
23 mBtnLogin.setOnClickListener(new View.OnClickListener() {
24 @Override
25 public void onClick(View view) {
26 Toast.makeText(EditTextActivity.this, "登录成功", Toast.LENGTH_SHORT).show();
27 }
28 });
29 mEtUserName=findViewById(R.id.et_1);
30 mEtUserName.addTextChangedListener(new TextWatcher() {
31 @Override
32 public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
33
34 }
35
36 @Override
37 public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
38 Log.d("edittext", charSequence.toString());
39
40 }
41
42 @Override
43 public void afterTextChanged(Editable editable) {
44
45 }
46 });
47 }
48 }
主要部分
activity_edit_text.xml

1 <?xml version="1.0" encoding="utf-8"?>
2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 android:layout_width="match_parent"
4 android:layout_height="match_parent"
5 android:padding="15dp">
6 <EditText
7 android:id="@+id/et_1"
8 android:layout_width="match_parent"
9 android:layout_height="50dp"
10 android:textSize="20sp"
11 android:textColor="#FF0000"
12 android:hint="用户名"
13 android:background="@drawable/bg_et1"
14 android:paddingLeft="10dp"
15 android:paddingRight="10dp"
16 android:drawableLeft="@drawable/username"
17 android:drawablePadding="5dp"
18 android:maxLines="1"
19 android:layout_marginTop="70dp"/>
20 <EditText
21 android:id="@+id/et_2"
22 android:layout_width="match_parent"
23 android:layout_height="50dp"
24 android:layout_below="@id/et_1"
25 android:textSize="20sp"
26 android:hint="密码"
27 android:inputType="textPassword"
28 android:textColor="#FF0000"
29 android:layout_marginTop="15dp"
30 android:background="@drawable/bg_et1"
31 android:paddingLeft="10dp"
32 android:paddingRight="10dp"
33 android:drawableLeft="@drawable/password"
34 android:drawablePadding="5dp"
35 android:maxLines="1"/>
36 <!--登录按钮-->
37 <Button
38 android:id="@+id/btn_login"
39 android:layout_width="match_parent"
40 android:layout_height="40dp"
41 android:layout_below="@id/et_2"
42 android:layout_marginTop="30dp"
43 android:background="@drawable/bg_btn4"
44 android:text="登录"
45 android:textColor="#fff"
46 android:textSize="20sp"/>
47 </RelativeLayout>
另外:可能会出现找到的图片尺寸不合适,这里直接使用画图工具改变尺寸大小就可以了!
【Android】学习day05|简单登陆页面的实现|监听代码的更多相关文章
- android 学习随笔二十九(自定义监听 )
package com.itheima.momo.dialog; import com.itheima.momo.R; import android.app.AlertDialog; import a ...
- Android TV开发中所有的遥控器按键监听及注意事项,新增home键监听
原文:Android TV开发中所有的遥控器按键监听及注意事项,新增home键监听 简单记录下android 盒子开发遥控器的监听 ,希望能帮到新入门的朋友们 不多说,直接贴代码 public cla ...
- Android开发之手势滑动(滑动手势监听)详解
Android开发之手势滑动(滑动手势监听)详解 在Android应用中,经常需要手势滑动操作,比如上下滑动,或左右方向滑动,处理手势滑动通常有两种方法:一种是单独实现setOnTouchListen ...
- 移动端H5页面惯性滑动监听
移动端H5页面惯性滑动监听 在移动端,当你快速滑动有滚动条的页面时,当你手指离开屏幕时,滚动条并不会立即停止,而是会随着"惯性"继续滑动一段距离. 在做项目的过程中,需要监听惯性滑 ...
- Android软键盘的隐藏显示、事件监听的代码
把开发过程中重要的一些内容片段做个珍藏,如下资料是关于Android软键盘的隐藏显示.事件监听的内容,应该是对小伙伴们有所用途. public class ResizeLayout extends L ...
- android CheckBox控件的定义及事件监听
http://www.beijibear.com/index.php?aid=336 android CheckBox控件的定义及事件监听,本例实现CheckBox控件的定义及点击事件的监听并显示结果 ...
- Android笔记-4-实现登陆页面并跳转和简单的注册页面
实现登陆页面并跳转和简单的注册页面 首先我们来看看布局的xml代码 login.xml <span style="font-family:Arial;font-size:18px; ...
- angularjs中$http、$location、$watch及双向数据绑定学习实现简单登陆验证
使用$http.$location.$watch及双向数据绑定等实现简单的用户登陆验证,记录备忘: 1.$http模拟从后台获取json格式的数据: 2.$watch实时监控数据变化: 3.$loca ...
- Android的事件处理机制详解(二)-----基于监听的事件处理机制
基于监听的事件处理机制 前言: 我们开发的app更多的时候是需要与用户的交互----即对用户的操作进行响应 这就涉及到了android的事件处理机制; android给我们提供了两套功能强大的处理机制 ...
- Android输入控件EditText和软键盘监听
1. 跳转到新的页面自动软键盘显示情况: 在配置清单文件AndroidManifest.xml文件,对Activity的windowSoftInputMode属性进行设置. stateUnspecif ...
随机推荐
- 小议ml.NET机器学习与人机责任划分
最近,特斯拉宣布召回110万辆车,名义上是纠正单踏板不良习惯,背后原因可能是这些车辆的电子控制单元存在缺陷,可能导致刹车失灵(潮州等交通事故至今没有定论).这个事件引起了人们对于机器学习技术和人机责任 ...
- Apache solr XML 实体注入漏洞(CVE-2017-12629)
描述: Apache Solr 是一个开源的搜索服务器.Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现.原理大致是文档通过Http利用XML加到一个搜索集 ...
- Job System 初探
作者:i_dovelemon 日期:2023-08-24 主题:Fiber, Atomic Operation, MPMC Queue, Multiple thread, Job system 引言 ...
- 《Linux基础》01. 概述
@ 目录 1:Linux的应用领域 1.1:个人桌面领域的应用 1.2:服务器领域 1.3:嵌入式领域 2:Linux介绍 3:Linux和Unix的关系 4:Linux基本规则 Linux介绍 1: ...
- Codeforces 1462F The Treasure of The Segments
题意 给\(n(1\leq n\leq 2*10^5)\)个线段$[l_i,r_i] (1≤l_i≤r_i≤10^9) $,问最少删除几个线段,使得剩下线段中,有至少一个线段与所有线段相交. 分析 对 ...
- Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.so
在安装Docker以后,执行命令出现错误. Got permission denied while trying to connect to the Docker daemon socket at u ...
- 达梦数据库-DW-国产化--九五小庞
武汉达梦数据库股份有限公司成立于2000年,是国内领先的数据库产品开发服务商,国内数据库基础软件产业发展的关键推动者.公司为客户提供各类数据库软件及集群软件.云计算与大数据等一系列数据库产品及相关技术 ...
- SQL Server用户的设置与授权
SQL Server用户的设置与授权 SSMS 登陆方式有两种,一是直接使用Windows身份验证,二是SQL Server身份验证.使用SQL Server用户设置与授权不仅可以将不同的数据库开放给 ...
- 最快速搭建个人服务器图床siuuuuu
@ 目录 1.服务器准备 2.docker 安装 (1)通过命令行的方式 (2)宝塔面板上安装 3.开启端口访问 什么是docker 4.docker安装minio 什么是minio 5.配置mini ...
- C语言条件运算符(?:)
条件运算符(conditional operator)有时候也称为三元运算符(ternary operator,或者trinary operator),因为它是唯一需要 3 个操作数的运算符: 条件 ...