Android布局管理器

来源:互联网 发布:三星s7开发者选项优化 编辑:程序博客网 时间:2024/05/16 19:00
1.线性布局:LinearLayout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="right|center_horizontal">
    ...
</LinearLayout>
orientation布局方向(排列方式), 垂直vertical,水平horizontal
android:gravity="right|center_horizontal"
gravity对齐方式 水平右对齐,垂直居中bottom|center_horizontal
<!-- 水平中右对齐,垂直居中center|right|center_horizontal" -->
2.表格布局:TableLayout  可在线性布局:LinearLayout里面
<!-- 添加一个表格行 --> <TableRow>...</TableRow>
<TableLayout android:id="@+id/TableLayout01"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:shrinkColumns="1"
    android:stretchColumns="2">
    ...
</TableLayout>
<!--shrinkColumns允许被收缩的列的序列号,第2列  -->
<!--stretchColumns允许被拉伸列的序列号,第3列  -->
<!--collapseColumns允许被隐藏的列的序列号  -->
<!-- 直接添加按钮,它自己会占一行 -->
3.帧布局:FrameLayout
<!-- 依次定义7个TextView,先定义的TextView位于底层,后定义的TextView位于上层 -->
<TextView
        android:id="@+id/view01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:width="210px"
        android:height="50px"
        android:background="#ff0000" />
<TextView
        android:id="@+id/view02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:width="180px"
        android:height="50px"
        android:background="#dd0000" />
        ...
相对布局:RelativeLayout
    <!-- 定义该组件位于父容器中间 -->
    <TextView
        android:id="@+id/view01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:background="@drawable/leaf" />
    <!-- 定义该组件位于view01组件的上方 -->
    <TextView
        android:id="@+id/view02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@id/view01"
        android:layout_alignLeft="@id/view01"
        android:background="@drawable/leaf" />
    <!-- 定义该组件位于view01的下方 -->
     android:layout_alignLeft="@id/view01"
     android:layout_below="@id/view01"
    <!-- 定义该组件位于view01的左边 -->
     android:layout_alignTop="@id/view01"
     android:layout_toLeftOf="@id/view01"
    <!-- 定义该组件位于view01的右边 -->
     android:layout_alignTop="@id/view01"
     android:layout_toRightOf="@id/view01"
绝对布局:AbsoluteLayout
使用绝对布局时,每一个子组件都可指定以下两个属性:
android:layout_x="20dip"
android:layout_y="20dip"
大部分时候,使用绝对布局不是一个好思路