Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android學習指南之七:表格布局TableLayout

Android學習指南之七:表格布局TableLayout

編輯:關於android開發

       前面兩節講了常用Layout之FrameLayout、LinearLayout,絕對布局AbsoluteLayout和相對布局RelativeLayout,本文繼續講另一種比較常用的布局--表格布局。

       表格布局簡介

       表格布局TableLayout以行列的形式管理子元素,每一行是一個TableRow布局對象,當然也可以是普通的View對象,TableRow離每放一個元素就是一列,總列數由列數最多的那一行決定。

       表格布局實例

       我們看一個例子:

XML/HTML代碼
  1. <?xml version=”1.0″ encoding=”utf-8″?>  
  2. <TableLayout android:id=”@+id/TableLayout01″   
  3. android:layout_width=”fill_parent” android:layout_height=”fill_parent”   
  4. android:stretchColumns=”0″ xmlns:android=”http://schemas.android.com/apk/res/android”><TableRow android:layout_width=”fill_parent”   
  5. android:layout_height=”20dip”>  
  6. <TextView android:text=”色彩透明度測試” android:textSize=”18dip”   
  7. android:layout_span=”2″ 合並兩列   
  8. android:layout_gravity=”center”   
  9. android:layout_width=”fill_parent” android:layout_height=”fill_parent”>  
  10. </TextView>  

       再看一下顯示效果:

Android學習指南之七:表格布局TableLayout

       其中 android:stretchColumns=”0″ 作用是讓第一列可以擴展到所有可用空間;下面我們講一下TableLayout幾個重要的屬性:

       collapseColumns – 設置隱藏那些列,列ID從0開始,多個列的話用”,”分隔。

       stretchColumns – 設置自動伸展那些列,列ID從0開始,多個列的話用”,”分隔。

       shrinkColumns -設置自動收縮那些列,列ID從0開始,多個列的話用”,”分隔。

       可以用”*”來表示所有列,同一列可以同時設置為shrinkable和stretchable。

       我們再舉一個例子來看一下:

XML/HTML代碼
  1. <?xml version=”1.0″ encoding=”utf-8″?>  
  2. <TableLayout xmlns:android=”http://schemas.android.com/apk/res/android”   
  3. android:layout_width=”fill_parent”   
  4. android:layout_height=”fill_parent”   
  5. android:stretchColumns=”1″>   第二列自動伸展<TableRow>  
  6. <TextView  
  7. android:layout_column=”1″     我是第二列   
  8. android:text=”打開…”   
  9. android:padding=”3dip” /> 元素內容與邊界之間保留3dip的距離   
  10. <TextView  
  11. android:text=”Ctrl-O”   
  12. android:gravity=”right”   
  13. android:padding=”3dip” />  
  14. </TableRow><TableRow>  
  15. <TextView  
  16. android:layout_column=”1″   
  17. android:text=”保存…”   
  18. android:padding=”3dip” />  
  19. <TextView  
  20. android:text=”Ctrl-S”   
  21. android:gravity=”right” 元素本身的內容向右對齊   
  22. android:padding=”3dip” />  
  23. </TableRow><TableRow>  
  24. <TextView  
  25. android:layout_column=”1″   
  26. android:text=”另存為…”   
  27. android:padding=”3dip” />  
  28. <TextView  
  29. android:text=”Ctrl-Shift-S”   
  30. android:gravity=”right”   
  31. android:padding=”3dip” />  
  32. </TableRow><View  
  33. android:layout_height=”2dip”   
  34. android:background=”#FF909090″ /><TableRow>  
  35. <TextView  
  36. android:text=”X”   
  37. android:padding=”3dip” />  
  38. <TextView  
  39. android:text=”導入…”   
  40. android:padding=”3dip” />  
  41. </TableRow><TableRow>  
  42. <TextView  
  43. android:text=”X”   
  44. android:padding=”3dip” />  
  45. <TextView  
  46. android:text=”導出…”   
  47. android:padding=”3dip” />  
  48. <TextView  
  49. android:text=”Ctrl-E”   
  50. android:gravity=”right”   
  51. android:padding=”3dip” />  
  52. </TableRow><View  
  53. android:layout_height=”2dip”   
  54. android:background=”#FF909090″ /><TableRow>  
  55. <TextView  
  56. android:layout_column=”1″   
  57. android:text=”退出”   
  58. android:padding=”3dip” />  
  59. </TableRow>  
  60. </TableLayout>  

       下面是顯示效果:

Android學習指南之七:表格布局TableLayout

       我加粗顯示的地方都有解釋,大家可以留意一下。

       提示:TableRow也是一個Layout,裡面的元素會水平排列,如果TableRow的父元素不是TableLayout的話,那麼他會表現的像一個LinearLayout。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved