文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Android开发基础(用户登录布局)

2022-06-06 14:01

关注

本篇文章适用还未接触过android开发的小伙伴,提供很简单的案例,让大家快速上手,保持信心。

创建项目 UI布局 java代码逻辑实现

效果如下:
在这里插入图片描述

一、创建项目

我们使用android studio开发,创建项目前的准备:

安装好android studio; 安装好jdk; 安装好sdk; 安装好avd(虚拟机),也可用自己手机debug。
ps:以上的操作百度很多很详细,就略过了。 开始创建我的第一个项目

new project -》 选择 empty activity -》 编辑信息后finish
LinearLayout(线性布局)和RelativeLayout(相对布局)

备注: 不止这两种布局,不过二者用的最多,他们就相当于窗户的框,里面的玻璃分成几个部分设计,布局可以嵌套使用(有过前端基础的很好理解)。

①LinearLayout(线性布局)
android:gravity:控件自身上面的内容位置

android:layout_gravity:控件本身相对于父控件的显示位置

注意:在父容器设置为竖直方向时,layout_gravity只能控制水平位置;而当父容器设置为垂直方向时,layout_gravity只能控制竖直位置。

android:layout_weight:给控件分配剩余空间,分配权重

注意:layout_weight在设置前必须设置元素的高/宽为0dp,这样分配的空间才标准。因为权重最基本的用法就是 对线性布局指定方向(水平或垂直)上剩余空间分配的一个规则,先把规定的大小占完,再来按比例分配剩余空间

android:orientation:设置线性布局的排版方向,有**vertical (垂直方向) 、horizontal(水平方向)**两种布局方式

②RelativeLayout(相对布局)
在这里插入图片描述

(android:)后面的内容就是属性,包括width宽度等等;
其中的match_parent:就是占满父空间,而wrap content:就是内容多大,框就多大。

id:是每个组件的身份证,唯一,通过id找到这个组件(组件就是每一个小部分,比如按钮,文本框等等);

text:就是文本内容(button按钮中就是按钮上的值);

hint:就是默认文本,比如我们在登录的输入框里,会先显示先显示一个“enter your password”内容。

暂时介绍这些,更多的属性面向百度,多去常试,使用方法一样。

Java逻辑代码部分

这部分有过java基础的小伙伴应该很容易看懂,没有java基础的应该先去学习java基础知识。

MainActivity.java 代码如下:

package edu.naipan.login;
import androidx.appcompat.app.AppCompatActivity;
import android.app.Activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
        initListener();
    }
//  获取组件,初始化
    private TextView dev_UserName;
    private TextView dev_Password;
    private Button btn_login;
    private void initView() {
        dev_UserName = findViewById(R.id.dev_UserName);
        dev_Password = findViewById(R.id.dev_Password);
        btn_login = findViewById(R.id.btn_login);
    }
//  设置点击监听
    private void initListener() {
        btn_login.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
//              获取文本内容
                String userName = dev_UserName.getText().toString();
                String password = dev_Password.getText().toString();
//                setTitle("账号"+userName+"密码"+password);
//              判断用户名是否为空;
                if(TextUtils.isEmpty(userName)){
                    dev_UserName.setError("用户名不能为空");
                    return;
                }
//              判断密码是否为空;
                if(TextUtils.isEmpty(password)){
                    dev_Password.setError("密码不能为空");
                    return;
                }
//              判断用户名与密码是否匹配;
                if(userName.equals("naipan") && password.equals("201750080522")){
                    setTitle("密码正确");
                    return;
                }
                else{
                    setTitle("密码不正确");
                    return;
                }
            }
        });
    }
}

相信大家看不懂的地方就是一些api不清楚,这就是我们需要练习,慢慢掌握积累的,包括我们学的很多东西,语言是基石,更多的是我们要学会有可以利用的工具。

setContentView(R.layout.activity_main);

这个就是映射到我们写的布局了;R是一个类,保存了许多资源,可以看到R.layout.activity_main就是位置索引。

findViewById(R.id.dev_UserName);

这个就是之前说的id,作为身份证找到对应的组件,这里的dev_UserName就是我定义文本框的id,我们可以获得id对应的组件的内容,这样我们就可以对数据进行相应的操作了。

其他的api我就不一一解释了,我们可以查手册,百度等等,大家可以动手练习了。

就到这了,内容很简单,主要运用这个简单的例子,让大家对android开发有个大致的了解,之后我们继续深入学习。


作者:nai_dev


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯