刚开始学Android开发的时候,没有H5的基础总是分不清android布局文件的用法,真正要学会android布局还是得实战一次,下面不多说,直接上代码。

这是一个登陆界面,LinerLayout嵌套RelativeLayout的布局,去掉我写的注释就可以直接使用:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" //match_parent是占满整行,设置宽
android:layout_height="match_parent" //占满整列,设置高
android:orientation="vertical"> //里面的项目垂直排列,如果不写可能报错 <RelativeLayout //这是LinerLayout嵌套的第一个layout。显示在第一行
android:layout_width="match_parent"
android:layout_height="180dp"
android:background="@mipmap/login_bg_no"> //设置背景图片,背景图片一般就是粘贴在mipmap的xhdpi中 <ImageView //图片控件,显示在父控件的第一行
android:id="@+id/back1" //设置id,后面可以用来设置点击事件或相对布局
android:layout_width="20dp" //设置图片大小,如果要展示原有大小就改为wrap_content
android:layout_height="20dp"
android:src="@mipmap/bg_back_white" //背景图片,一个类似“<”的图片
android:layout_marginTop="15dp"
android:layout_alignParentLeft="true" //靠近父控件左侧
android:layout_marginLeft="20dp" /> //离父控件左侧20dp,LinerLayout中不能这样用 <TextView //文字控件,由于是RelativeLayout,不设置相对布局,就会和上一个控件叠加
android:id="@+id/register"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="注册" //显示的文字
android:textSize="13sp" //文字大小
android:textColor="@color/white" //文字颜色,在value的color中设置颜色
android:layout_alignParentRight="true" //显示在父控件的右侧
android:layout_marginTop="15dp" //距父控件的上侧15dp
android:layout_marginRight="20dp"
/>
</RelativeLayout> <RelativeLayout //由于LinearLayout中垂直排列,显示在上一个RelativeLayout的下侧
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"> <EditText //输入框
android:id="@+id/loginnum"
android:layout_width="match_parent" //先占满一行
android:layout_height="55dp" //高度55dp
android:layout_marginTop="20dp" //再往下移20dp
android:layout_marginRight="20dp" //右侧减少20店铺
android:layout_marginLeft="20dp" //左侧减少20dp
android:hint="请输入手机号码" //设置默认文字
android:textSize="20sp" //文字大小
android:numeric="integer" //设置只能输入int类型的数
android:maxLength="11" //最长11位
android:singleLine="true"/> //单行,不能回车再起一行 <EditText
android:id="@+id/loginpassword"
android:layout_width="match_parent"
android:layout_height="55dp"
android:layout_marginRight="20dp"
android:layout_marginLeft="20dp"
android:layout_marginTop="10dp"
android:layout_below="@id/loginnum" //相对于id为loginnum的控件往下
android:hint="请输入密码"
android:textSize="20sp"
android:password="true" //显示输入的为*
android:singleLine="true"/> //单行 <Button //按钮
android:id="@+id/loginbtn"
android:layout_width="match_parent"
android:layout_height="45dp"
android:text="登 录"
android:textSize="20sp"
android:background="@drawable/backguound_shape" //这是自己定义的一个drawable,使button显示为圆角,并点击变色,具体参见下一条博客。
android:textColor="@color/white"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="30dp"
android:layout_below="@id/loginpassword"/>
</RelativeLayout>
</LinearLayout>

上面展示了几个常用的控件用法,最重要的是要对LinerLayout和RelativeLayout有所了解。

下面的完成后的样子:

掌握这些,一些简单的布局就已经能够完成了。

如果color中没有相关颜色可以插入

切记不要删除color默认的几个颜色,否则会报错。

    <color name="red">#ff0000</color> <!-- 红色 -->
<color name="black">#000000</color> <!-- 黑色 -->
<color name="white">#ffffff</color> <!-- 白色 -->
<color name="darkred">#8b0000</color> <!-- 暗红色 -->

Android碎笔录1——基本布局的更多相关文章

  1. Android碎笔录3——点击跳转

    只要是view都能设置点击事件,不必要非得是Button. 要想实现跳转得三步走: 第一步.绑定 每个Layout都有一个一个java文件跟它绑定,这个Layout相关的代码都写在这个java文件里 ...

  2. Android碎笔录2——按键的点击变色和圆角实现

    android的Button默认写出来之后都是方形的直角,并且点击感很不明显,只要在drawable中加上一个xml就能解决这个问题: <?xml version="1.0" ...

  3. Android 自定义View及其在布局文件中的使用示例(三):结合Android 4.4.2_r1源码分析onMeasure过程

    转载请注明出处 http://www.cnblogs.com/crashmaker/p/3549365.html From crash_coder linguowu linguowu0622@gami ...

  4. Android 自定义View及其在布局文件中的使用示例(二)

    转载请注明出处 http://www.cnblogs.com/crashmaker/p/3530213.html From crash_coder linguowu linguowu0622@gami ...

  5. android项目的结构和布局

    一.res文件夹 1.res文件夹用于存放Android的资源.包括:动画.静态图片.字符串.菜单.布局.视频.文件等. 1.drawable-ldpi:低分辨率图形(120像素/英寸) 2.draw ...

  6. Android UI基础之五大布局

    Android  UI基础之五大布局 Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦.组件按照布局的要求依次排列,就组成了用户所看见的界面.Andro ...

  7. Android学习笔记④——页面的布局方式

    FrameLayout(帧布局) 这个布局的特点是简单的默认把每一个视图组件都放在边框内且放在左上角,即使添加多个视图组件,他们也都是重叠在左上角,新的视图会遮挡住旧的视图.可以根据gravity来改 ...

  8. Android UI学习 - FrameLayou和布局优化(viewstub)

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://android.blog.51cto.com/268543/308090 Fram ...

  9. Android 改变窗口标题栏的布局

    Android改变窗口标题栏的布局  第一种方式 --在XML文件里面引入配置文件作为标题. 第二种方式  --动态的代码加入进去. 第三种方式(网上的): 一. 重点 一般应用的Title都是建立应 ...

随机推荐

  1. Jupyter Notebook & Spyder 常用快捷键

    Jupyter Notebook: 1. "shift + enter" notebook单元格内执行代码,并且自动跳至下一个的单元格 2. "tab" 自动补 ...

  2. 如何在本地连接服务器上的MySQL

    服务器以阿里云为例 1.首先确保防火墙开放了3306端口 2.确保服务器的linux系统防火墙开放了3306端口 firewall-cmd --list-ports # 查看端口 我这里已经启动了,如 ...

  3. 在国内运行Flutter配置的正确姿势--如出现Oops; flutter has exited unexpectedly.

    如果根据flutter的官网教程,在运行flutter doctor时无法下载依赖,请根据以下步骤 export PUB_HOSTED_URL=https://pub.flutter-io.cn ex ...

  4. (转)zabbix之生产案例

    原文: https://www.abcdocker.com/abcdocker/category/zabbix/ 原文: https://chegva.com/1170.html

  5. JVM-垃圾收集过程的内存管理

    JDK1.7 JVM的垃圾收集算法有 1. 标记-清除算法: 2. 复制算法:在商业虚拟机都是使用这种算法来回收新生代的 3. 标记-整理算法: 4.分代收集算法: JDK1.7 JVM的垃圾收集器有 ...

  6. windows 老掉牙CMD的命令

    再老,也得温习下: net use \\' /user:'administrator' //ipc连接 net use \\127.0.0.1\ipc$ /delete //退出ipc net use ...

  7. 《Algorithms算法》笔记:元素排序(3)——洗牌算法

    <Algorithms算法>笔记:元素排序(3)——洗牌算法 Algorithms算法笔记元素排序3洗牌算法 洗牌算法 排序洗牌 Knuth洗牌 Knuth洗牌代码 洗牌算法 洗牌的思想很 ...

  8. IO流(三)其他流与File类

    1:其他的流 1: DataOutputStream ;多了一些操作基本数据类型的功能 DataInputStream:读取文件. 用DataOutputStream流写进去的数据,就用DataInp ...

  9. Tomcat8-启动脚本分析

    1. Tomcat也是一个java程序 最终的入口启动文件:org.apache.catalina.startup.Bootstrap 最后一条命令: start "Tomcat" ...

  10. 何为session?

    何为session 在计算机中,尤其是在网络应用中,称为"会话控制".session 对象存储特定用户会话所需的属性及配置信息.这样,当用户在应用程序的 Web 页之间跳转时,存储 ...