文章目录
- 用户登录界面功能实现:登陆跳转、退出
- ♦ 回顾
- ♦ 编写 MainActivity 实现功能
- 登录功能效果
- 退出弹框、连续点击返回退出
- ♦ 设计 activity_my_tool.xml 展示工具界面
- ♦ 编写 MyToolActivity 展示欢迎信息
用户登录界面功能实现:登陆跳转、退出
♦ 回顾
通过上一节的内容,我们创建了简单的登陆界面,但是部分功能还未完善,比如登陆、退出、注册等。今天就先来实现登陆跳转
和退出功能
。
返回顶部
♦ 编写 MainActivity 实现功能
package com.example.myapplication;import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.example.myapplication_test.R;public class MainActivity extends AppCompatActivity {// 获取xml中的组件EditText username,pwd; // 获取文本编辑组件的对象Button login,back; // 获取按钮组件的对象// 2秒内点击两次返回键退出long exittime; // 设定退出时间间隔public boolean onKeyDown(int keyCode, KeyEvent event){ //参数:按的键;按键事件// 判断事件触发if (keyCode == KeyEvent.KEYCODE_BACK){// 判断两次点击间隔时间if((System.currentTimeMillis()-exittime)>2000){Toast.makeText(MainActivity.this,"再次返回程序退出!",Toast.LENGTH_SHORT).show();exittime = System.currentTimeMillis(); // 设置第一次点击时间}else{//finish();System.exit(0);}return true;}return super.onKeyDown(keyCode,event);}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 通过组件id创建组件对象username = findViewById(R.id.username);pwd = findViewById(R.id.pwd);login = findViewById(R.id.login);back = findViewById(R.id.back);// 为登陆按钮添加监听事件实现登陆login.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// 假设用户名为admin,密码为123if (username.getText().toString().equals("admin")&&pwd.getText().toString().equals("123456")){// 用户名、密码正确,成功登陆Toast.makeText(MainActivity.this,"登陆成功!",Toast.LENGTH_SHORT).show();// 实现页面跳转Intent intent = new Intent();intent.setClass(MainActivity.this,MyToolActivity.class);// 存储当前用户名,用于工具界面显示信息intent.putExtra("username",username.getText().toString());startActivity(intent);} else if (username.getText().toString().equals("")||pwd.getText().toString().equals("")){// 用户名、密码不能为空Toast.makeText(MainActivity.this,"用户名/密码不能为空!",Toast.LENGTH_SHORT).show();} else {// 用户名、密码不正确Toast.makeText(MainActivity.this,"登录失败,密码或用户名错误!",Toast.LENGTH_SHORT).show();}}});// 为退出按钮添加监听事件实现退出 --- 用到弹框提示确认退出back.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// 1.创建弹框对象,显示在当前页面AlertDialog.Builder ab = new AlertDialog.Builder(MainActivity.this);// 2.编辑弹框样式// 2.1 创建标题ab.setTitle("提示");// 2.3 设置图标ab.setIcon(R.mipmap.ic_launcher_round);// 2.4 设置内容ab.setMessage("您是否确定退出?");// 2.5 设置按钮ab.setPositiveButton("取消",null);ab.setNeutralButton("确定", new DialogInterface.OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {// 实现程序的退出,结束当前MainActivity.this.finish();}});// 3.创建弹框ab.create();// 4.显示弹框ab.show();}});}
}
登录功能效果
退出弹框、连续点击返回退出
返回顶部
♦ 设计 activity_my_tool.xml 展示工具界面
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.example.myapplication.MyToolActivity"android:background="@drawable/main_page" 设置背景><TextViewandroid:id="@+id/welcome" welcome文本框结合登陆显示欢迎信息android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentStart="true"android:layout_alignParentLeft="true"android:layout_alignParentBottom="true"android:layout_marginStart="28dp"android:layout_marginLeft="28dp"android:layout_marginBottom="25dp"android:text=""android:textColor="@android:color/white"android:textSize="20dp"/><TextViewandroid:id="@+id/title" android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_centerHorizontal="true"android:layout_marginTop="58dp"android:text="My Tools"android:textColor="@android:color/white"android:textSize="25dp"android:textStyle="bold"/>
</RelativeLayout>
返回顶部
♦ 编写 MyToolActivity 展示欢迎信息
package com.example.myapplication;import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
import com.example.myapplication_test.R;public class MyToolActivity extends AppCompatActivity {TextView welcome;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_my_tool);// 获取文本框对象welcome = findViewById(R.id.welcome);// 通过final Intent intent = getIntent();intent.getStringExtra("username");welcome.setText("欢迎您"+intent.getStringExtra("username"));}
}
返回顶部
上一篇:【Android】实现应用简单的用户登录界面 下一篇:【Android】MyTool 工具界面:百度、拨号、一键拨号