Android studio实现app登录界面

Android studio设计app登录界面
UI界面设计
在设计登录界面时,可以使用不同布局方式来实现该功能,通常情况下使用的是LinearLayout(线性布局)和TableLayout(表格布局),在本文中使用线性布局。登陆界面需要几项必不可少的控件,如下所示:

TextView:用于显示标题和“用户名"和"密码"的提示;
标题设置

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="登录页面"
        android:textSize="30dp"
        android:textColor="@android:color/black"
        android:layout_gravity="center_horizontal"/>

"用户名"提示

<TextView
       android:layout_width="65dp"
       android:layout_height="wrap_content"
       android:text="用户名:"
       android:textSize="16dp"
       android:textColor="@android:color/black"/>

"密码"提示:
<TextView
       android:layout_width="65dp"
       android:layout_height="wrap_content"
       android:text="密码:"
       android:textSize="16dp"
       android:textColor="@android:color/black"/>

EditView:用于输入"用户名"和"密码";
"用户名"输入框:
<EditText
       android:layout_width="264dp"
       android:layout_height="wrap_content"
       android:id="@+id/ed1"
       android:hint="请输入用户名"               
       android:textColor="@android:color/black"/>

"密码"输入框:

<EditText
       android:layout_width="264dp"
       android:layout_height="wrap_content"
       android:id="@+id/ed2"
       android:hint="请输入密码"
       android:textColor="@android:color/black"/>

Button:用于控制登录。
Button登录按钮:
 <Button
        android:layout_width="285dp"
        android:layout_height="wrap_content"
        android:text="登录"
        android:textSize="20dp"
        android:id="@+id/bt"
        android:layout_gravity="center_horizontal" />/>

本文使用三层LinearLayout互相嵌套,第一层LinearLayout中包括标题(TextView)和第二层LinearLayout以及登录按钮(Button)。第一层LinearLayout使用垂直分布,即android:orientation=“vertical”。
第二层LinearLayout中嵌套两个第三层LinearLayout,且第二层LinearLayout为垂直分布,即android:orientation=“vertical”。
第三层的两个LinearLayout中各包含一个TextView和一个EditView,第三层LinearLayout为水平分布,即android:orientation=“horizontal”。

总的UI设计如下所示。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.activities.MainActivity"
    android:orientation="vertical"
    android:weightSum="1">

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="登录页面"
        android:textSize="30dp"
        android:textColor="@android:color/black"
        android:layout_gravity="center_horizontal"/>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:gravity="center"
        android:layout_weight="0.55">
        <LinearLayout
            android:layout_width="300dp"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
            <TextView
                android:layout_width="65dp"
                android:layout_height="wrap_content"
                android:text="用户名:"
                android:textSize="16dp"
                android:textColor="@android:color/black"/>

<EditText
                android:layout_width="264dp"
                android:layout_height="wrap_content"
                android:id="@+id/ed1"
                android:hint="请输入用户名"
                android:textColor="@android:color/black"/>
        </LinearLayout>
        <LinearLayout
            android:layout_width="300dp"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
            <TextView
                android:layout_width="65dp"
                android:layout_height="wrap_content"
                android:text="密码:"
                android:textSize="16dp"
                android:textColor="@android:color/black"/>
            <EditText
                android:layout_width="264dp"
                android:layout_height="wrap_content"
                android:id="@+id/ed2"
                android:hint="请输入密码"
                android:textColor="@android:color/black"/>
        </LinearLayout>
    </LinearLayout>

<Button
        android:layout_width="285dp"
        android:layout_height="wrap_content"
        android:text="登录"
        android:textSize="20dp"
        android:id="@+id/bt"
        android:layout_gravity="center_horizontal" />/>
</LinearLayout>

效果如图所示。

Java代码编写
若用户输入用户名或密码有误时,弹窗提示“用户名或密码输入有误,请更正后重新输入!”。
若用户没有输入用户名或密码,弹窗提示“用户名与密码不能为空!”。
当用户名与密码同时输入正确是,方可进入系统。

package com.example.activities;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
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 usertext;
    private EditText passtext;
    private Button loginbutton;

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        usertext=(EditText)this.findViewById(R.id.ed1);
        passtext=(EditText)this.findViewById(R.id.ed2);
        loginbutton=(Button)this.findViewById(R.id.bt);
        loginbutton.setOnClickListener(new ButtonListener());
    }
    private class ButtonListener implements View.OnClickListener{
        @Override
        public void onClick(View v){
            String user=usertext.getText().toString();
            String pass=passtext.getText().toString();
            if (user.equals("")||pass.equals("")){
                Toast.makeText(MainActivity.this,"用户名与密码不能为空!",Toast.LENGTH_SHORT).show();
            }
            else if (user.equals("denglu")&&pass.equals("0000")){
                Toast.makeText(MainActivity.this,"登陆成功",Toast.LENGTH_SHORT).show();
                Intent intent=new Intent(MainActivity.this,TwoActivity.class);
                startActivity(intent);
            }
            else{
                Toast.makeText(MainActivity.this,"用户名或密码输入有误,请更正后重新输入!",Toast.LENGTH_SHORT).show();
            }
        }
    }
}

点击登录按钮之后,进入下一个界面,这时需在Manifest中添加第二个Activity的名称

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.activities">

<application
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".TwoActivity"></activity>
    </application>

</manifest>

第二个界面的Activity需调用第二个xlm的layout,如下所示

package com.example.myapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class TwoActivity extends AppCompatActivity {

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android Studio+Servlet+MySql实现登录注册

    一.Android 项目当中设置明文传输 1.设置明文传输的xml <?xml version="1.0" encoding="UTF-8"?> <network-security-config> <base-config cleartextTrafficPermitted="true"/> </network-security-config> 2.引入上述创建的xml android:networ

  • Android studio 利用共享存储进行用户的注册和登录验证

        //注册功能public class MainActivity extends AppCompatActivity { //声明共享存储(全局变量) private SharedPreferences spf; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); /

  • Android Studio连接SQLite数据库的登录注册实现

    1.先看一下项目目录: 2.新建一个AS项目,创建如上图所示的目录结构,然后添加内容: (1)修改添加布局文件: activity_main.xml: <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android&quo

  • Android Studio实现简单的QQ登录界面的示例代码

    一.项目概述 QQ是我们日常生活使用最多的软件之一,包含登录界面和进入后的聊天界面.好友列表界面和空间动态界面等.登录界面的制作比较简单,主要考验布局的使用,是实现QQ项目的第一步.现在APP开发的首要工作都是实现登录页面,所以学会了QQ登录界面对以后的软件开发有着很重要的作用. 二.开发环境 三.详细设计 1.头像设计 首先在layout文件里面选择了RelativeLayout(相对布局)作为整个页面的布局. 在顶端放置了一个ImageView控件,宽度和高度设置的都是70dp,水平居中设置

  • Android Studio实现QQ的注册登录和好友列表跳转

    一.项目概述 本次项目主要包含了注册.登录和好友列表三个界面以及之间相互跳转.其中好友列表界面设计的很详细,有好友头像和消息内容.用户先点击注册按钮进入注册界面,输入完账号和密码后,点击注册,跳转到登录界面,这时候账号和密码也被传了过来,点击登录按钮进入好友列表界面,这时候用户名也被传递过来. 二.开发环境 三.详细设计 1.登录界面的搭建 整体布局是相对布局RelativeLayout,上来ImageView是头像框,下面一个LinearLayout,显示的账号TextView和EditTex

  • Android Studio实现登录界面功能

    本文实例为大家分享了vue + element ui实现锚点定位的具体代码,供大家参考,具体内容如下 题目 设计一个登录界面.要求: a) 包含用户名.密码.记住密码.“忘记密码”按钮和“登录”按钮.b) 单击“忘记密码”按钮弹出提示对话框,对话框内容自拟. 答案 activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app=&q

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

    想要制作一个简易的登录界面非常容易,总体上来说就是UI布局.给定id.新建跳转的页面.以及输入账号密码的获取与判断,那么接下来就开始制作吧! 1.首先就是Activity中的组件布局,这个就不一一列举了!自己把两个EditText和一个Button摆好就ok了,像按钮的点击效果可以自己设计一下(默认状态是什么颜色,按下去是什么颜色). 2.再一个就是要给定控件一个id <?xml version="1.0" encoding="utf-8"?> <

  • Android Studio连接MySql实现登录注册(附源代码)

    本文主要介绍了Android Studio连接MySql实现登录注册,分享给大家,具体如下: 一.创建工程 1.创建一个空白工程 2.随便起一个名称 3.设置网络连接权限 <uses-permission android:name="android.permission.INTERNET"/> 二.引入Mysql驱动包 1.切换到普通Java工程 2.在libs当中引入MySQL的jar包 将mysql的驱动包复制到libs当中 三.编写数据库和dao以及JDBC相关代码

  • Android Studio实现登录功能案例讲解

    LoginActivity.java 包 com.hyx.example.mymap; import java.text.SimpleDateFormat; import java.util.Date; import android.app.Activity; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.os.Ha

  • Android Studio 通过登录功能介绍SQLite数据库的使用流程

    前言: SQLite简介:是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl.C#.PHP.Java等,还有ODBC接口,同样比起Mysql.PostgreSQL这两款开源的世

随机推荐