android布局layout,Android布局(layout)

翟越
2023-12-01

1.线性布局Linear Layout

按排列的方向(orientation)分为水平线性布局(

android:orientation="vertical")和垂直线性布局(

android:orientation="horizontal"//默认的是水平线性布局

)。

线性布局定义了排列方向后,会一直沿着该方向一直排列下去,除非利用嵌套再重新定义。

android:layout_weight="数字" //表示剩余空间该控件所占的百分比,通常用于平均几个控件之间的位置,定义为1

注意: 区分“android:gravity”和“android:layout_gravity”。

android:gravity:是对控件本身来说的,是用来设置“控件自身的内容”应该显示在“控件自身体积”的什么位置,默认值是左侧。

android:layout_gravity:是相对于控件的父元素来说的,设置该控件在它的父元素的什么位置。

2.相对布局Relative Layout

android:layout_alignParentLeft="true" 位于父容器左上角

android:layout_alignParentBottom, android:layout_alignParentTop,

android:layout_alignParentRight 只能在父控件为RelativeLayout时才起作用,而对于像LinearLayout这样的布局不起作用

android:layout_centerInParent="true" 位于布局容器的中央位置;

layout_centerHorizontal位于布局容器水平居中位置;

layout_centerVertical位于布局容器垂直居中位置

被参照控件:控件与控件之间位置

android:layout_below="@id/***" 位于***组件下方

android:layout_toLeftOf="@id/###"位于###组件左则,紧贴并列

控件与控件之间对齐方式

android:layout_alignLeft="@id/***"与***组件左边界紧贴对齐,叠在一起;

android:layout_alignTop="@id/###"与###组件上边界对齐

可以通过另一个控件的ID来确定当前控件的位置(即任意两个控件之间的相对位置)。

android:layout_marginTop=“25dip” //顶部距离

android:gravity=“left” //控件中文本位置

android:layout_marginLeft="15dip //距离左边距

// 相对于给定ID控件

android:layout_above 将该控件的底部置于给定ID的控件之上(将该控件置于指定控件的上面);

android:layout_below 将该控件的顶部置于给定ID的控件之下(将该控件置于指定控件的下面);

3.表格布局Table Layout

表格布局模型以行列的形式管理子控件,每一行为一个TableRow的对象,当然也可以是一个View的对象。TableRow可以添加子控件,每添加一个为一列。N个TableRow之间是以N行的行数的方式纵向排列。

android:shrinkColumns="n”:设置第n+1列为可收缩的列。当可收缩的列太宽(内容过多)不会被挤出屏幕。当需要设置多列为可收缩时,将列序号用逗号隔开。

android:stretchColumns="n”:设置第n+1列为可伸展的列,以填满剩下的多余空白空间,若有多列需要设置为可伸展,请用逗号将需要伸展的列序号隔开。

列元素(Button)属性,定义子控件。

android:layout_colum:设置该控件在TableRow中指定的列。

android:layout_span:设置该控件所跨越的列数。

android:layout_weight="wrap_content"

android:layout_height="wrap_content"

android:text="xxxxxxx"/>

android:layout_weight="wrap_content"

android:layout_height="wrap_content"

android:text="xxxxxxxx"/>

 类似资料: