必威体育Betway必威体育官网
当前位置:首页 > IT技术

安卓开发——登录界面

时间:2019-08-17 05:44:23来源:IT技术作者:seo实验室小编阅读:82次「手机版」
 

登录界面

项目功能需求:

1> 点击登录按钮,登录成功与否必须有对应的响应事件

2> 点击取消按钮,可以退出程序

3> 用户文本框和密码框可以接收由键盘输入的数据,且分别有提示信息。(密码框显示输入的内容不显示)

4> 要有背景图片

效果图

在这里插入图片描述

一、安卓结构布局分析,外层布局一共有四层为垂直布局,第二三四层内嵌布局为水平布局。

二、线性布局概述

线性布局(Linearlayout)是一种比较常用且简单的布局方式。在这种布局中,所有的子元素都是按照垂直或水平的顺序排列在界面上。如果是垂直排列,每个子元素占一行,如果是水平排列,则每个子元素占一列。线性布局可以支持布局样式嵌套实现复杂的布局样式。

layout文件夹下面的activity_main.xml为布局文件

LinearLayout标签的常用属性有:

(1)layout_width:布局宽度(match_parent(适应屏幕宽度)、wrap_content(包裹宽度))

(2)layout_height:布局高度(match_parent(适应屏幕高度)、wrap_content(包裹高度))

(3)orietation:方向(vertical(垂直),horizontal(水平))

(4)gravity:对齐方式(left, right, center……)

(5)background:背景(颜色、图片)

三、导入背景图片

TextView为文本标签,其常用属性有:

(1)text(文本)【建议文本内容在values下的string.xml中自行定义,例:Android:text="@string/login" ;其中login是string.xml文件中的name属性】

(2)textSize(字体大小)【字体大小单位一般用sp,例:android:textSize=“25sp”】

(3)textcolor字体颜色)【例:android:textColor="#ff00ff"】

EditText为可编辑文本框,其常用属性有:

(1)hint(提示信息)【例:android:hint="@string/et_username"】

(2)singleLine(单行显示)【属性:(true、false)例:android:singleLine=“true”】

(3)inputtype(输入类型)【属性:(textPassword、datetime、text)例:android:inputType=“textPassword”】

Button为按钮标签

提示:为了方便添加事件,每个标签可以增加 ID 属性,格式为:android:id="@+id/bt_log"

三、按照布局分析将各个标签进行排版布局

<?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:background="@mipmap/b2"
    android:gravity="center"
    android:orientation="vertical"
    tools:context="com.example.admin.register.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/login"
        android:textSize="25sp"
        android:textColor="#ff00ff"
         />
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center_horizontal">

        <TextView
            android:id="@+id/tv_username"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/tv_username"
            android:textSize="20sp"
            android:textColor="#000000"/>

        <EditText
            android:id="@+id/et_username"
            android:layout_width="160dp"
            android:layout_height="wrap_content"
            android:hint="@string/et_username"
            android:singleLine="true"
            />

    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center_horizontal">

        <TextView
            android:id="@+id/tv_password"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/tv_password"
            android:textSize="20sp"
            android:textColor="#000000"/>

        <EditText
            android:id="@+id/et_password"
            android:layout_width="160dp"
            android:layout_height="wrap_content"
            android:hint="@string/et_password"
            android:inputType="textPassword"
            />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="center_horizontal">

        <Button
            android:id="@+id/bt_log"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/bt_log"/>

        <Button
            android:id="@+id/bt_bos"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/bt_bos"/>

    </LinearLayout>

</LinearLayout>

四、打开values文件下面的string.xml文件,在文件中定义layout文件夹下面的activity_main.xml中所需文本。

<resources>
    <string name="app_name">Register</string>
    <string name="login">用户登录</string>
    <string name="tv_username">用户:</string>
    <string name="tv_password">密码:</string>
    <string name="bt_log">登录</string>
    <string name="bt_bos">取消</string>
    <string name="et_username">输入用户名</string>
    <string name="et_password">输入密码</string>
</resources>

五、打开java文件夹下MainActivity文件添加事件响应。

为用户名文本框、密码框、登录按钮、取消按钮定义变量。

通过资源标识获得控件实例,因为类型不同所以要进行强制转换。

给登录按钮注册监听器,实现监听器接口,编写事件(注:使用匿名内部类

toast是Android系统提供的一种提醒方式,不会占用任何的屏幕空间,所以可以将一些简短的信息通过toast的方式通知给用户,这些信息过一段时间会自动消失

第一个参数:MainActivity.this,当前的上下文环境

第二个参数:要显示的字符串,就是你想在屏幕上显示的内容

第三个参数:显示的时间长短,就是这个字符串在屏幕上显示的时长。Toast默认的有两个LENGTH_LONG(长)和LENGTH_SHORT(短)。

show(); 显示

给取消按钮注册监听器,实现监听器接口,编写事件

finish(); 终止

package com.example.admin.register;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {
    private EditText et_username;
    private EditText et_password;
    private Button bt_log;
    private Button bt_bos;
    @Override
    protected void onCreate(Bundle savedinstanceState) {
        super.onCreate(savedInstanceState);
        //利用布局资源文件设置用户界面
        setContentView(R.layout.activity_main);

        //通过资源标识获得控件实例
        et_username = (EditText) findViewById(R.id.et_username);
        et_password = (EditText) findViewById(R.id.et_password);
        bt_log = (Button) findViewById(R.id.bt_log);
        bt_bos = (Button) findViewById(R.id.bt_bos);

        //给登录按钮注册监听器,实现监听器接口,编写事件
        bt_log.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //获取用户输入的数据
                String strUsername = et_username.getText().toString();
                String strPassword = et_password.getText().toString();

                //判断用户名和密码是否正确(为可以进行测试,将用户名和密码都定义为admin)
                if(strUsername.equals("admin") && strPassword.equals("admin")){
                    toast.maketext(MainActivity.this,"用户名和密码正确!",Toast.LENGTH_SHORT).show();
                }else {
                    Toast.makeText(MainActivity.this,"用户名或密码错误!",Toast.LENGTH_SHORT).show();
                }

            }
        });
        //给取消按钮注册监听器,实现监听器接口,编写事件
        bt_bos.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });
    }
}

以上就是安卓开发登录界面的的过程

相关阅读

ubuntu16.04输入密码后返回登录界面(反复登录问题+.Xa

人比较急躁,一急躁就爱强制关机,这不,强制关机后搞的ubuntu16.04进不去了 话不多说,双系统,进入recover mode,然后进入root promt

Java登录界面的实现(注册、登录、背景图片)

*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.java * 作者:常轩 * 微信公众

教你如何跳过XP系统开机登录界面

使用XP系统的用户都不陌生,在进入Windows XP桌面之前,每次都会出现一个用脑登录界面,要求我们输入用户名与密码,可以加大了系统的安全

逼格走起 修改QQ登录界面上的系统文字

虽然QQ版本总在不断更新,但QQ登录界面的风格却基本没啥变化。反正小编看着这个界面已经有点了腻歪的赶脚。那么能换吗,当然是可以的

如何取消Windows XP系统开机登录界面的方法步骤

我们可以通过修改注册表来实现XP的自动登录。第1步:运行&ldquo;regedit&rdquo;,以打开&ldquo;注册表管理器&rdquo;;运行注册表编辑

分享到:

栏目导航

推荐阅读

热门阅读