一、View常用属性
android:layout_height 设置View控件的高度
android:layout_width 设置View控件的宽度
android:id 设置View的唯一标识符,在Java代码中可以通过 findViewById 来找到View控件
android:background 设置View控件的背景,可以是颜色,图片,或者是 .xml 文件
android:onClick 设置View控件的点击事件,但是需要在Activity 中声明所指定的方法
android:padding 设置View控件的内边距
android:visibility 设置View控件是否可见(值:true 或 false)
android:alpha 设置View控件的透明度(值:0—1)
android:layout_margin 设置View控件的外边距
二、常用的布局
1、LinearLayout 线性布局
只有两种排列方式:竖向、横向
如果其中的UI控件内容已经超出屏幕则不显示
特有属性:
android:orientation 设置排列方式:vertical、horizontal
android:gravity 设置内部元素排列的重心位置 center
android:layout_weight 设置UI控件的权重;使用时需要将宽或高指定为0dp,以达到我们的需求
(是剩余屏幕空间按比例分)
android:layout_gravity 设置当前控件对于父布局的位置,会将父布局中的gravity属性覆盖
2、FrameLayout 帧布局
最简单的一种布局(效率高)
排列方式是统一的全部摆放到左上角,后续的UI 控件在上方
可以通过以下几个属性控制其中的UI 控件的摆放
android:layout_gravity
android:layout_marginXXX
右下角的表示方式:android:gravity="right | bottom"(分开表示出错)
3、RelativeLayout 相对布局
排列方式是根据参照物来放置UI 控件
(1)指兄弟控件的相对位置。该组属性的值是另一个控件的 id
layout_toRightOf
layout_toLeftOf
layout_above
layout_below
(2)指兄弟控件之间的对齐关系。该组属性的值是另一个控件的 id
layout_alignRight
layout_alignLeft
layout_alignTop
layout_alignBottom
(3)指控件与父布局之间的对齐关系。该组属性的值是true 或者false
layout_alignParentRight
layout_alignParentLeft
layout_alignParentTop
layout_alignParentBottom
layout_centerInParent
layout_centerVertical
layout_centerHorizontal
4、GridLayout 表格布局
经典案例:计算器
特有属性:
布局的属性中设置行和列
android:rowCount="4" 4行
android:columnCount="4" 4列
可以指定子控件的位置(和数组一样,下标从0开始)(按照行顺序排放,一行排满就换行)
android:layout_row="0"
android:layout_column="2"
(表示第一行第三列)
以上四种布局中可以实现重叠的有 RelativeLayout 和 FrameLayout
知道:AbsoluteLayout ——绝对布局,指定X坐标Y坐标,无法做到屏幕适配的效果