2

需要有不那么微不足道的动态列表,其中每条记录由几列(文本、按钮)组成。它应该看起来像:

Text11 Text12 Button1 Button2
Text21 Text22 Button1 Button2
...

起初,实现这一目标的明显方式似乎是TableLayout. 我期望在 res/layout/*.xml 中指定布局/样式数据,并用 java 代码中的一些数据集填充它(如ListView,它可以TextView在 *.xml 中指定项目并将其绑定到某个数组使用ArrayAdapter)。但是玩了一段时间后,我发现所有可能的方法都是完全以TableLayout编程方式填充。尽管如此,直接在 java 代码中创建TableRowTableRow设置布局属性似乎还不够优雅。

所以问题是:我走对了吗?真的是TableLayout最好的视图来实现这一点吗?也许扩展ListView或其他方式来满足这些要求更合适?

4

2 回答 2

4

使用 ListView 和 ArrayAdapter,您可以做比 TextView 更复杂的布局。您可以为列表中的每一行指定一个带有 2 个 TextView 和 2 个按钮的 LinearLayout。

这是一个类似的问题 Android: ListView elements with multiple clickable button

于 2010-06-16T11:29:19.350 回答
1

恕我直言,这取决于您需要渲染的数据量。

通过 inflate/addView 动态构建布局是一项非常简单的任务,但也比使用自定义适配器慢。使用自定义适配器,您可以重用 convertView 参数,然后更有效地设置值

于 2010-06-16T11:34:09.150 回答