Android中的花式动态列表:TableLayout vs ListView

时间:2010-06-16 11:05:43

标签: android listview tablelayout android-arrayadapter

需要有一个不那么重要的动态列表,每个记录由几列(文本,按钮)组成。它应该看起来像:

Text11 Text12 Button1 Button2
Text21 Text22 Button1 Button2
...

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

所以问题是:我是在正确的道路上吗? TableLayout真的是最好的观点来实现这一目标吗?也许扩展ListView或其他东西以满足这些要求更合适?

2 个答案:

答案 0 :(得分:4)

使用ListView和ArrayAdapter,您可以执行比TextView更复杂的布局。您可以为List中的每一行指定一个LinearLayout,其中包含2个TextViews和2个Buttons。

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

答案 1 :(得分:1)

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

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