1. 程式人生 > >安卓的6個佈局

安卓的6個佈局

安卓分為相對佈局,線性佈局,網格佈局,幀佈局,表格佈局,絕對佈局六種。 1.相對佈局(RelativeLayout
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="Button1" android:layout_alignParentLeft="true" android:layout_alignParentTop="true"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button2" android:layout_alignParentRight="true" android:layout_alignParentTop=
"true"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button3" android:layout_centerInParent="true"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button4" android:layout_alignParentLeft=
"true" android:layout_alignParentBottom="true"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button5" android:layout_alignParentRight="true" android:layout_alignParentBottom="true"/> </RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">


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

    <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@id/button3"
android:layout_toLeftOf="@id/button3"
android:text="button1" />

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

    <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/button3"
android:layout_toLeftOf="@id/button3"
android:text="button4" />

    <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/button3"
android:layout_toRightOf="@id/button3"
android:text="button5" />
</RelativeLayout>
2.線性佈局(LinearLayout)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

    <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="button1" />

    <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="button2" />

    <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="button3" />

</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
    <EditText
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:hint="Type something"/>

    <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Send"
/>

</LinearLayout>
3.網格佈局(GridLayout)
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:columnCount="4"
android:layout_gravity="center">


    <Button android:text="/"
android:layout_column="3"/>
    <Button android:text="1" />
    <Button android:text="2" />
    <Button android:text="3" />
    <Button android:text="*" />
    <Button android:text="4" />
    <Button android:text="5" />
    <Button android:text="6" />
    <Button android:text="-" />
    <Button android:text="7" />
    <Button android:text="8" />
    <Button android:text="9" />
    <Button android:text="+"
android:layout_rowSpan="3"
android:layout_gravity="fill"/>
    <Button android:text="0"
android:layout_columnSpan="2"
android:layout_gravity="fill"/>
    <Button android:text="00"/>
    <Button android:text="="
android:layout_columnSpan="3"
android:layout_gravity="fill"/>
</GridLayout>
4.表格佈局(TableLayout)
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:stretchColumns="2">

    <TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
        <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="button1"/>
         <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="button2"/>
        </TableRow>

    <TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
        <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:text="button3"/>
        <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="2"
android:text="button4"/>
    </TableRow>
    <TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
        <Button
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="button5"
android:layout_column="2"/>
        </TableRow>
</TableLayout>
5.幀佈局(FrameLayout)
常見的刮刮樂就是通過幀佈局實現的
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

    <Button
android:id="@+id/button"
android:layout_width="150dp"
android:layout_height="150dp"
android:text="1" />

    <Button
android:id="@+id/button2"
android:layout_width="80dp"
android:layout_height="80dp"
android:text="2" />
    <Button
android:id="@+id/button3"
android:layout_width="40dp"
android:layout_height="40dp"
android:text="3" />
</FrameLayout>
6.絕對佈局(AbsoluteLayout)