原文:http://www.tasharen.com/forum/index.php?topic=6758.0
NGUI讨论群:333417608
概述
UITable用来方便的在一个可变尺寸的单元格子排列widget。如果你熟悉HTML的table,就会发现他们差不多。编辑时和运行时都可以用。如果你想要固定格子大小,那就用Grid。

选择一个panel,之后在scene view中右键点击任何地方,在Create menu里面选择Table,就可以创建一个UIGrid。当然你也可以简单的把UITable组件挂到任何game object上。
Table的排列方向会向左。Columns控制每一行有多少个子物体,超过这个数量多余的会放在新的一行。根据Direction的设置,决定新行会放在之前行的上面还是下面。
默认情况下Table重新调整所有的子节点的位置,子节点的排序是以创建时候的顺序为准。如果想要指定排列顺序,就把子节点的名字用字母排序的方式命名 (“001”, “002”,“003”等),之后勾选Sorted。这样做就会让Table在重新排列之前先按名字进行排序。
最后,如果你想给看不到的子节点留下位置,勾选掉Hide Inactive。默认是勾选上的,所有看不到的子节点在排列时会被忽略。
你可以在每个格子中间加入空隙通过修改Padding属性。
注意每个子节点的pivot的问题。如果所有自己点都是居中的pivot,他们会以table的中心开始排列。如果是左上的pivot,他们会以table的左上角开始排列。最好对每个table里面的条目使用同样的pivot。
Table在运行时排列很管用,但是也可以在编辑状态下使用。只要右键这个脚本之后选择Execute选项。当你不需要这个脚本的时候,直接删除就可以。

小贴士 #2
在子节点上的TweenScale操作会触发table重新计算尺寸,把其他的节点重置位置。用这个方法可制作可折叠的区域,就像NGUI里的例子Quest Log一样。
类文档
http://tasharen.com/ngui/docs/class_u_i_table.html