Android 表格版面配置<TableLayout>

來源:互聯網
上載者:User

表格版面配置即,tableLayout,表格版面配置通過行、列的形式來管理UI組件,TablelLayout並不需要明確地聲明包含多少行、多少列,而是通過TableRow,以及其他組件來控製表格的行數和列數,
    TableRow也是容器,因此可以向TableRow裡面添加其他組件,沒添加一個組件該表格就增加一列。
    如果想TableLayout裡面添加組件,那麼該組件就直接佔用一行。
  在表格版面配置中,列的寬度由該列中最寬的儲存格決定,整個表格版面配置的寬度取決於父容器的寬度(預設是佔滿父容器本身)。
TableLayout繼承了LinearLayout,因此他完全可以支援LinearLayout所支援的全部XML屬性,除此之外TableLayout還支援以下屬性:
XML屬性                                                 相關用法                                                    說明
1. andriod:collapseColumns           setColumnsCollapsed(int ,boolean)       設定需要隱藏的列的序號,多個用逗號隔開
2.android:shrinkColumns              setShrinkAllColumns(boolean)                 設定被收縮的列的序號,多個用逗號隔開
3.android:stretchColimns             setSretchAllColumnds(boolean)               設定允許被展開的列的序號,多個用逗號隔開
 
代碼如下所示:
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
      >
  <!-- 定義第一個表格版面配置,指定第二列允許收縮,第三列允許展開 -->
  <TableLayout
 android:id="@+id/tablelayout1"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:shrinkColumns="1"
 android:stretchColumns="2"
 >
 <!-- 直接添加一個button,他自己會佔用一行 -->
 <Button
android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:text="獨自佔用一行的按鈕"/>
 <!-- 先添加一個tableRow,在添加三個button, 結果應該是三個button在這個tableRow(行)裡面,即排列為一行 -->
 <TableRow >
 <Button android:layout_width="wrap_content"
 android:layout_height="wrap_content"
android:text="RBtn1"/>
 <Button
 android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="RBtn2"/>
 <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
 android:text="RBtn3"/>
</TableRow>
 </TableLayout>
 </LinearLayout>
上面代碼展示了,在tableLayour中使用TableRow的效果,和不使用TableRow的效果,並第二列允許收縮,第三列允許展開。運行結果如下所示:
 
下面說明XML屬性的隱藏使用方法,在TableLayout中添加一下代碼,
 
android:collapseColumns="0"
代碼如下所示:
 
注意:屬性中設定列號的時候是從0,1,2,3 ....
         不是1,2,3...

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.