Android布局(layout)

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))