Android零基礎入門第29節:善用TableLayout表格佈局,
前面學習了線性佈局和相對佈局,線性佈局雖然方便,但如果遇到控制元件需要排列整齊的情況就很難達到要求,用相對佈局又比較麻煩,為此Android系統中提供了表格佈局。
一、認識TableLayout
表格佈局就是讓控制元件以表格的形式來排列控制元件,只要將控制元件放在單元格中,控制元件就可以整齊地排列,使用TableLayout標籤。
TableLayout繼承了 LinearLayout,因此它的本質依然是線性佈局管理器。每次向TableLayout中新增一個TableRow,該TableRow就是一個表格行,TableRow也是容器,因此它也可以不斷地新增其他元件,每新增一個子元件該表格就增加一列。如果直接向TableLayout中新增元件,那麼這個元件將直接佔用一行。
在表格佈局中,列的寬度由該列中最寬的那個單元格決定,整個表格佈局的寬度則取決於父容器的寬度(預設總是佔滿父容器本身)。
在表格佈局管理器中,可以為單元格設定如下3種行為方式。
Shrinkable:如果某個列被設為Shrinkable,那麼該列的所有單元格的寬度可以被收縮,以保證該表格能適應父容器的寬度。
Stretchable:如果某個列被設為Stretchable,那麼該列的所有單元格的寬度可以被拉伸,以保證元件能完全填滿表格空餘空間。
Collapsed:如果某個列被設為Collapsed,那麼該列的所有單元格會被隱藏。
TableLayout繼承了 LinearLayout,因此它完全可以支援LinearLayout所支援的全部XML屬性。除此之外,TableLayout還支援如下表所示的XML屬性和相關方法。
二、示例
接下來透過一個簡單的示例程式來學習TableLayout的使用用法。
同樣使用WidgetSample工程,繼續使用app/main/res/layout/目錄下的activity_main.xml檔案,在其中填充如下程式碼片段:
[程式碼]xml程式碼:
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
|
相關文章
- harmonyOS應用-TableLayout佈局
- Android入門教程 | UI佈局之LinearLayout 線性佈局AndroidUI
- Android入門教程 | UI佈局之RelativeLayout 相對佈局AndroidUI
- Android入門教程:ConstraintLayout約束佈局AndroidAI
- 表格佈局
- "Flutter基礎(十)佈局Widget快速入門Flutter
- Flutter 基礎(十)佈局 Widget 快速入門Flutter
- WPF 入門筆記 - 01 - 入門基礎以及常用佈局筆記
- css 佈局入門CSS
- 零基礎入門Python教程4節與基礎語法Python
- grid佈局快速入門
- 【WEB基礎】HTML & CSS 基礎入門(10)佈局與定位WebHTMLCSS
- Android程式設計基礎 • 【第1章 Android程式入門】Android程式設計
- React Native基礎&入門教程:初步使用Flexbox佈局React NativeFlex
- Android 佈局Android
- 零基礎入門Serverless:Hello WorldServer
- Android學習—— Android佈局Android
- 【WEB基礎】HTML & CSS 基礎入門(7)表格WebHTMLCSS
- CSS入門指南-4:頁面佈局CSS
- 你需要的Grid佈局入門教程
- VUE-表格佈局、表格查詢、工具欄、表格、分頁欄Vue
- 零基礎入門Python的路徑Python
- 零基礎入門│帶你理解Kubernetes
- 《Kubernetes零基礎快速入門》簡介
- Python-SQLAlchemy:第1節:SQLAlchemy入門PythonSQL
- 【HTML+CSS網頁設計與佈局 從入門到精通】第2章HTMLCSS網頁
- Android 佈局優化Android優化
- android --巧用 flexboxLayout 佈局AndroidFlex
- flex.css快速入門,極速佈局FlexCSS
- 快應用入門--頁面佈局篇
- Android中常見的佈局和佈局引數Android
- 移動佈局基礎之 流式佈局
- vue 基礎入門筆記 18:命名檢視實現經典佈局Vue筆記
- 零基礎入門前端的修煉之道前端
- Java零基礎入門(三)流程控制Java
- 零基礎學習Alfred(一):入門操作Alfred
- 給零基礎小白的Python入門教程Python
- 小程式簡單實現表格佈局