TableLayout(表格布局)


表格布局模型以行列的形式管理子控件,每一行為一個TableRow的對象,當然也可以是一個View的對象。TableRow可以添加子控件,每添加一個為一列。

TableLayout屬性:

  android:collapseColumns:將TableLayout里面指定的列隱藏,若有多列需要隱藏,請用逗號將需要隱藏的列序號隔開。             

  android:stretchColumns:設置指定的列為可伸展的列,以填滿剩下的多余空白空間,若有多列需要設置為可伸展,請用逗號將需要伸展的列序號隔開。                

  android:shrinkColumns:設置指定的列為可收縮的列。當可收縮的列太寬(內容過多)不會被擠出屏幕。當需要設置多列為可收縮時,將列序號用逗號隔開。

 列元素(Button)屬性:(奇怪的是button 里面沒有android:layout_column 和android:layout_span兩個屬性,寫進去無反應,還不知道為什么)

  android:layout_colum:設置該控件在TableRow中指定的列

  android:layout_span:設置該控件所跨越的列數

圖片:

代碼:

  1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2     xmlns:tools="http://schemas.android.com/tools"
  3     android:layout_width="match_parent"
  4     android:layout_height="match_parent"
  5     android:orientation="vertical"
  6     tools:context=".AndroidTableLayoutActivity" >
  7 
  8     <!-- 定義第一個表格,指定第2列允許收縮,第3列允許拉伸 -->
  9 
 10     <TableLayout
 11         android:id="@+id/tablelayout01"
 12         android:layout_width="match_parent"
 13         android:layout_height="wrap_content"
 14         android:shrinkColumns="1"
 15         android:stretchColumns="2" >
 16 
 17         <!-- 直接添加按鈕,自己占用一行 -->
 18 
 19         <Button
 20             android:id="@+id/btn01"
 21             android:layout_width="wrap_content"
 22             android:layout_height="wrap_content"
 23             android:text="獨自一行" >
 24         </Button>
 25 
 26         <TableRow>
 27 
 28             <Button
 29                 android:id="@+id/btn02"
 30                 android:layout_width="wrap_content"
 31                 android:layout_height="wrap_content"
 32                 android:text="普通" >
 33             </Button>
 34 
 35             <Button
 36                 android:id="@+id/btn03"
 37                 android:layout_width="wrap_content"
 38                 android:layout_height="wrap_content"
 39                 android:text="允許被收縮允許被收縮允許被收縮允許被收縮" >
 40             </Button>
 41 
 42             <Button
 43                 android:id="@+id/btn04"
 44                 android:layout_width="wrap_content"
 45                 android:layout_height="wrap_content"
 46                 android:text="允許被拉伸" >
 47             </Button>
 48         </TableRow>
 49     </TableLayout>
 50     <!-- 定義第2個表格,指定第2列隱藏 -->
 51 
 52     <TableLayout
 53         android:id="@+id/tablelayout02"
 54         android:layout_width="match_parent"
 55         android:layout_height="wrap_content"
 56         android:collapseColumns="1" >
 57 
 58         <TableRow>
 59 
 60             <Button
 61                 android:id="@+id/btn05"
 62                 android:layout_width="wrap_content"
 63                 android:layout_height="wrap_content"
 64                 android:text="普通" >
 65             </Button>
 66 
 67             <Button
 68                 android:id="@+id/btn06"
 69                 android:layout_width="wrap_content"
 70                 android:layout_height="wrap_content"
 71                 android:text="被隱藏列" >
 72             </Button>
 73 
 74             <Button
 75                 android:id="@+id/btn07"
 76                 android:layout_width="wrap_content"
 77                 android:layout_height="wrap_content"
 78                 android:text="允許被拉伸" >
 79             </Button>
 80         </TableRow>
 81     </TableLayout>
 82     <!-- 定義第3個表格,指定第2列填滿空白-->
 83 
 84     <TableLayout
 85         android:id="@+id/tablelayout03"
 86         android:layout_width="match_parent"
 87         android:layout_height="wrap_content"
 88         android:stretchColumns="1"
 89          >
 90 
 91         <TableRow>
 92 
 93             <Button
 94                 android:id="@+id/btn08"
 95                 android:layout_width="wrap_content"
 96                 android:layout_height="wrap_content"
 97                 android:text="普通" >
 98             </Button>
 99 
100             <Button
101                 android:id="@+id/btn09"
102                 android:layout_width="wrap_content"
103                 android:layout_height="wrap_content"
104                 android:text="填滿剩余空白" >
105             </Button>
106         </TableRow>
107     </TableLayout>
108     <!-- 定義第3個表格,指定第2列橫跨2列-->
109 
110     <TableLayout
111         android:id="@+id/tablelayout04"
112         android:layout_width="match_parent"
113         android:layout_height="wrap_content"
114          >
115 
116         <TableRow>
117 
118             <Button
119                 android:id="@+id/btn10"
120                 android:layout_width="wrap_content"
121                 android:layout_height="wrap_content"
122                 android:text="普通" >
123             </Button>
124             
125             <Button
126                 android:id="@+id/btn11"
127                 android:layout_column="2"
128                 android:layout_width="wrap_content"
129                 android:layout_height="wrap_content"
130                 android:text="填滿剩余空白" >
131             </Button>
132         </TableRow>
133     </TableLayout>
134 </LinearLayout>

 其它干貨下載資源已放入微信公眾號【一個碼農的日常】


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM