public class TableLayout extends LinearLayout
查过文档,整理下要点:
- 一个 TableLayout 包含一些 TableRow 对象,每个对象代表一行。除此之外也可以包含其他对象,比如直接放入 <TextView> 。
- TableLayout 容器不会为子元素显示边框线。
- 每一行包含 0 个或多个单元,每个单元可以放一个 View 对象。
- 一个 Table 的单元可以为空
- 单元可以像 HTML 一样占据多列 <span>
- 一个列的宽度由这一列中拥有最宽的单元的某一行宽度决定(想想也是)
- TableLayout 可以用 setColumnShrinkable() 或者 setColumnStretchable() 指定确定的列的收缩性或者扩展性
- 一旦设定可收缩,列的宽度可以被收缩至适应其 parent 对象。
- 一旦设定可拉伸,其可拓展宽度以适应任何多余的空间,但不会超过这个空间
- 表 Table 的总宽度由它自己 parent 的容器决定
- 任一列是可以同时具备可收缩性和可拉伸性的。在这种情况下,列总会改变其尺寸,占满所有的可用空间,且用不会超过这个范围。
- 最后,可以用 setColumnCollapsed() 隐藏一列
我们无法为 TableLayout 的 children 指定 layout_width 属性。宽度永远是 MATCH_PARENT。但 layout_height 属性可以由 child 定义平;默认值是 WRAP_CONTENT。如果一个 child 是 TableRow,则高度总是 WRAP_CONTENT。
表的单元必须按照增加列的排序填至行中,在代码和XML文件都要这样。列的索引是从0开始的。如果你不为 child 单元指定列序号,其会自动向下一个有效列增加。如果你跳过某列的索引,这一列会被视为这一行的空单元。
虽然 TableLayout 典型的 children 是 TableRow,但你也可用任何 View 的子类来作为其直接的 child(第一点)。这个 View 会作为一个占据所有列的单行显示。
看了 APIDemos 的一些例子,感觉比较全面了,这个布局比较简单,也不是很常用,主要是一些规则要熟悉熟悉,下面就直接从 ApiDemos 选一些典型的例子,基本够用了。
本文地址:http://www.cnblogs.com/rossoneri/p/4369333.html
资源文件:
1 <string name="table_layout_1_star">*</string> 2 <string name="table_layout_1_triple_star">***</string> 3 <string name="table_layout_1_open">Open\u2026</string> 4 <string name="table_layout_1_open_shortcut">Ctrl-O</string> 5 <string name="table_layout_1_save">Save As\u2026</string> 6 <string name="table_layout_1_save_shortcut">(Save Document)</string> 7 <string name="table_layout_1_quit">Quit Application</string> 8 <string name="table_layout_1_quit_shortcut">Ctrl-Shift-Q</string> 9 <string name="table_layout_2_path_1">~/path/to/file/to/open</string> 10 <string name="table_layout_2_path_2">~/.profile</string> 11 <string name="table_layout_2_open">Open</string> 12 <string name="table_layout_2_save">Save</string> 13 <string name="table_layout_2_save_all">Save All</string> 14 <string name="table_layout_3_star">*</string> 15 <string name="table_layout_3_triple_star">***</string> 16 <string name="table_layout_3_open">Open\u2026</string> 17 <string name="table_layout_3_open_shortcut">Ctrl-O</string> 18 <string name="table_layout_3_save">Save As\u2026</string> 19 <string name="table_layout_3_save_shortcut">(Save Document)</string> 20 <string name="table_layout_3_too_long">Too Long</string> 21 <string name="table_layout_3_quit">Quit Application</string> 22 <string name="table_layout_3_quit_shortcut">Ctrl-Shift-Q</string> 23 <string name="table_layout_4_open">Open\u2026</string> 24 <string name="table_layout_4_open_shortcut">Ctrl-O</string> 25 <string name="table_layout_4_save">Save As\u2026</string> 26 <string name="table_layout_4_save_shortcut">Ctrl-Shift-S</string> 27 <string name="table_layout_5_open">Open\u2026</string> 28 <string name="table_layout_5_open_shortcut">Ctrl-O</string> 29 <string name="table_layout_5_save">Save\u2026</string> 30 <string name="table_layout_5_save_shortcut">Ctrl-S</string> 31 <string name="table_layout_5_save_as">Save As\u2026</string> 32 <string name="table_layout_5_save_as_shortcut">Ctrl-Shift-S</string> 33 <string name="table_layout_5_import">Import\u2026</string> 34 <string name="table_layout_5_export">Export\u2026</string> 35 <string name="table_layout_5_export_shortcut">Ctrl-E</string> 36 <string name="table_layout_5_quit">Quit\u2026</string> 37 <string name="table_layout_6_x">X</string> 38 <string name="table_layout_6_open">Open\u2026</string> 39 <string name="table_layout_6_open_shortcut">Ctrl-O</string> 40 <string name="table_layout_6_save">Save\u2026</string> 41 <string name="table_layout_6_save_shortcut">Ctrl-S</string> 42 <string name="table_layout_6_save_as">Save As\u2026</string> 43 <string name="table_layout_6_save_as_shortcut">Ctrl-Shift-S</string> 44 <string name="table_layout_6_import">Import\u2026</string> 45 <string name="table_layout_6_export">Export\u2026</string> 46 <string name="table_layout_6_export_shortcut">Ctrl-E</string> 47 <string name="table_layout_6_quit">Quit\u2026</string> 48 <string name="table_layout_7_x">X</string> 49 <string name="table_layout_7_open">Open\u2026</string> 50 <string name="table_layout_7_open_shortcut">Ctrl-O</string> 51 <string name="table_layout_7_save">Save\u2026</string> 52 <string name="table_layout_7_save_shortcut">Ctrl-S</string> 53 <string name="table_layout_7_save_as">Save As\u2026</string> 54 <string name="table_layout_7_save_as_shortcut">Ctrl-Shift-S</string> 55 <string name="table_layout_7_import">Import\u2026</string> 56 <string name="table_layout_7_export">Export\u2026</string> 57 <string name="table_layout_7_export_shortcut">Ctrl-E</string> 58 <string name="table_layout_7_toggle_checkmarks">Toggle Checkmarks</string> 59 <string name="table_layout_7_toggle_shortcuts">Toggle Shortcuts</string> 60 <string name="table_layout_8_x">X</string> 61 <string name="table_layout_8_open">Open\u2026</string> 62 <string name="table_layout_8_open_shortcut">Ctrl-O</string> 63 <string name="table_layout_8_save">Save\u2026</string> 64 <string name="table_layout_8_save_shortcut">Ctrl-S</string> 65 <string name="table_layout_8_save_as">Save As\u2026</string> 66 <string name="table_layout_8_save_as_shortcut">Ctrl-Shift-S</string> 67 <string name="table_layout_8_import">Import\u2026</string> 68 <string name="table_layout_8_export">Export\u2026</string> 69 <string name="table_layout_8_export_shortcut">Ctrl-E</string> 70 <string name="table_layout_8_toggle_stretch">Toggle Stretch</string> 71 <string name="table_layout_9_open">Open\u2026</string> 72 <string name="table_layout_9_open_shortcut">Ctrl-O</string> 73 <string name="table_layout_9_save">Save\u2026</string> 74 <string name="table_layout_9_save_shortcut">Ctrl-S</string> 75 <string name="table_layout_9_save_as">Save As\u2026</string> 76 <string name="table_layout_9_save_as_shortcut">Ctrl-Shift-S</string> 77 <string name="table_layout_9_save_all">Save All And Do A Lot Of Stuff Just To Be Too Long For This Screen Because It Is A Test After All</string> 78 <string name="table_layout_9_save_all_shortcut">Ctrl-E</string> 79 <string name="table_layout_9_import">Import\u2026</string> 80 <string name="table_layout_9_export">Export\u2026</string> 81 <string name="table_layout_9_export_shortcut">Ctrl-E</string> 82 <string name="table_layout_9_toggle_shrink">Toggle Shrink</string> 83 <string name="table_layout_10_user">User</string> 84 <string name="table_layout_10_password">Password</string> 85 <string name="table_layout_10_cancel">Cancel</string> 86 <string name="table_layout_10_login">Login</string> 87 <string name="table_layout_12_a">A</string> 88 <string name="table_layout_12_b">BB</string> 89 <string name="table_layout_12_c">CCCC</string> 90 <string name="table_layout_12_d">D</string> 91 <string name="table_layout_12_e">E</string> 92 <string name="table_layout_12_f">F</string> 93 <string name="table_layout_12_g">G</string> 94 <string name="table_layout_12_h">H</string>