android布局方式

LinearLayout线性布局


两种布局方式分别是横向和纵向。通过设置android:orientation属性来设置,vertical,horizontal。

<LinearLayout
        android:id="@+id/linearLayout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical">
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="text1" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="text2" />
        </LinearLayout>
        <LinearLayout
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="text1" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="text2" />
        </LinearLayout>

    </LinearLayout>

RelativeLayout相对布局


参考其他元素布局,默认是参考父元素。

属性类型有三类:

1.属性值是true或者false的:

android:layout_centerHrizontal 水平居中
android:layout_centerVertical 垂直居中
android:layout_centerInparent 相对于父元素完全居中。
android:layout_alignParentBottom 位于父元素的下边缘
android:layout_alignParentTop 位于父元素的上边缘
android:layout_alignParentLeft 位于父元素的左边缘
android:layout_alignParentRight 位于父元素的右边缘

2.属性值是其他元素的id的:

android:layout_below 在某元素的下方
android:layout_above 在某元素的上方
andorid:layout_toRightOf 在某元素的右方
android:layout_toLeftOf 在某元素的左方
android:layout_alignBottom 和某元素下方对齐
android:layout_alignTop 和某元素上方对齐
android:layout_alignRight 和某元素右方对齐
android:layout_alignLeft 和某元素左方对齐

3.属性值是数值距离的:

android:layout_marginLeft 离某元素左边缘的距离
android:layout_marginRight 离某元素右边缘的距离
android:layout_marginTop 离某元素上边缘的距离
android:layout_marginBottom 离某元素下边缘的距离

<RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:text="Button" />

        <Button
            android:id="@+id/button3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/button2"
            android:layout_above="@id/button2"
            android:text="Button" />
    </RelativeLayout>

  

FrameLayout帧布局


这个布局所有的元素都是从左上角开始的

<FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <TextView
            android:layout_width="wrap_content"
            android:background="#00000000"
            android:layout_height="wrap_content" android:text="11111" />
        <TextView
            android:layout_width="wrap_content"
            android:background="#00000000"
            android:layout_height="wrap_content" android:text="222222" />
    </FrameLayout>

TableLayout表格布局


 

TableLayout必须配合TableRow使用。

TableLayout包括属性:

android:stretchColumns 设置第几列为伸展(0表示第一列)
android:shrinkColumns 设置第几列为收缩
android:collapseColumns 设置第几列为隐藏

TableRow内的元素包括的属性:

android:layout_column 设置控件在第几列
android:layout_span 设置控件能跨多少列

<TableLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <TableRow>
            <TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="111"></TextView>
            <TextView android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="222"></TextView>
        </TableRow>
        <TableRow>
            <TextView android:layout_span="2" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="wewwwwwww"></TextView>
        </TableRow>
    </TableLayout>

  

 

posted @ 2017-12-21 10:30  不骄不傲  阅读(356)  评论(0编辑  收藏  举报