Table Layout(表格版面佈局)就是讓控制項以表格的形式來排列控制項,只要將控制項放在儲存格中,控制項就可以整齊地排列,使用 <TableLayout> </TableLayout> 標籤。TableLayout 繼承了 LinearLayout,因此它的本質依然是線性佈局管理器。每次向 TableLayout 中添加一個 TableRow,該 TableRow 就是一個表格行, TableRow 也是容器,因此它也可以不斷地添加其他組件,每添加一個子元件該表格就增加一列。如果直接向 TableLayout 中添加元件,那麼這個元件將直接佔用一行。
Table Layout 表格版面佈局程式 |
- 操作系統:Windows 7 64-bit 版本 開發環境:Android Studio 4.0.1 版本
- Gradle 版本:6.1.1
- 手機測試版本:API 19
- 原程式:C:\Development\Development_Android\Android_Project\ Layout - TableLayout
- 程式:C:\Development\Development_Android\Android_Project\ Layout - TableLayout
Table Layout - layout/activity_main.xml:
<?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/TableLayout1" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" android:stretchColumns="0,3" android:gravity="center_vertical" android:background="#66FF66" >
<TableRow> <TextView /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="用戶名:"/> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:minWidth="150dp"/> <TextView /> </TableRow>
<TableRow> <TextView /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="密 碼:" /> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:minWidth="150dp" /> <TextView /> </TableRow>
<TableRow> <TextView /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="登陸"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="退出"/> <TextView /> </TableRow>
</TableLayout> |
在表格佈局中,列的寬度由該列中最寬的那個儲存格決定,整個表格佈局的寬度則取決於父容器的寬度(默認總是占滿父容器本身)。
在表格佈局管理器中,可以為儲存格設置如下 3種行為方式。
• Shrinkable:如果某個列被設為 Shrinkable,那麼該列的所有儲存格的寬度可以被收縮,以保證該表格能適應父容器的寬度。
• Stretchable:如果某個列被設為 Stretchable,那麼該列的所有儲存格的寬度可以被拉伸,以保證元件能完全填滿表格空餘空間。
• Collapsed:如果某個列被設為 Collapsed,那麼該列的所有儲存格會被隱藏。
TableLayout 繼承了 LinearLayout,因此它完全可以支援 LinearLayout 所支援的全部 XML 屬性。除此之外,TableLayout 還支援所示的XML屬性和相關方法。
沒有留言:
張貼留言