前言
- 在
Android开发中,绘制UI时常需各种布局 - 今天,我将全面介绍
Android开发中最常用的五大布局
含
Android Studio 2.2中新增的布局:约束布局(ConstraintLayout)介绍
目录

1. 布局类型
在Android中,共有2类、6种布局方式,分别是:

2. 布局介绍
- 具体介绍

本文主要介绍传统的5大布局,关于约束布局(ConstraintLayout)具体点击查看文章
3. 布局属性
Android的布局属性通过XML配置- 下面,主要讲解布局公有属性 & 特有属性
3.1 公有属性
即 5种布局都具备下述属性
layout_width、layout_heightlayout_margin+方位padding+方位gravitylayout_gravity
layout_gravity一般作用于LeanerLayout和FrameLayout,但此处为了与gravity对比

layout_gravity:多用于自身控件相对于父控件的位置
gravity:多用于设置父控件里的子控件的位置
3.2 特有属性
- 具体介绍如下

3.3 特别注意
- 5个布局元素可相互嵌套使用,从而实现各种不同的效果
- 关于
线性布局(LinearLayout)的权重属性layout_weight请看文章
4. 选择器(Selector)
4.1 作用
通过设置选择器(selector)可使控件 在不同操作下(默认、点击等) 显示不同样式
通过
xml编写 =selector.xml
4.2 属性
| XML属性 | 说明 |
|---|---|
| android:drawable | 放一个drawable资源 |
| android:state_pressed | 按下状态,如一个按钮触摸或者点击。 |
| android:state_focused | 取得焦点状态,比如用户选择了一个文本框。 |
| android:state_hovered | 光标悬停状态,通常与focused state相同,它是4.0的新特性 |
| android:state_selected | 选中状态 |
| android:state_enabled | 能够接受触摸或者点击事件 |
| android:state_checked | 被checked了,如:一个RadioButton可以被check了。 |
| android:state_enabled | 能够接受触摸或者点击事件 |
注:上述所有属性的取值 = boolean属性 = true、false
4.3 实例说明
在drawable添加 selector.xml 资源文件
button_selector.xml:
1 | |
在布局文件main.xml中控件的属性设置:
1 | |
5. 布局形状(Shape)
- 作用:设置布局的颜色、边框线
- 使用:通过
xml编写 =shape.xml - 具体使用
1 | |
在布局文件main.xml中控件的属性设置:
1 | |
注:同时设置点击样式 & 形状
1 | |
附:颜色透明度
1 | |