Android是否有类似于表的ListView适配器

Android是否有类似于表的ListView适配器,android,Android,我正在使用ListView显示项目列表。这些项目采用列和行的表格格式。是否有一个类似于表的适配器来确保所有列和行对齐?我知道这会带来复杂性,比如每列应该有多大,如何处理截断文本,以及其他事情。我只是好奇目前是否有和适配器隐藏在这个任务的某个地方。或者甚至是另一个控件?有这样的控件,但它不适用于列和行。幸运的是,您似乎一直在期待一些复杂性:)我能够使TableLayout表现得像ListView(至少在视觉上)。我的答案。使用ListView的目的是能够扩展到更大的数据集,不必预先为所有项目创建和

我正在使用ListView显示项目列表。这些项目采用列和行的表格格式。是否有一个类似于表的适配器来确保所有列和行对齐?我知道这会带来复杂性,比如每列应该有多大,如何处理截断文本,以及其他事情。我只是好奇目前是否有和适配器隐藏在这个任务的某个地方。或者甚至是另一个控件?

有这样的控件,但它不适用于列和行。幸运的是,您似乎一直在期待一些复杂性:)

我能够使
TableLayout
表现得像
ListView
(至少在视觉上)。我的答案。

使用ListView的目的是能够扩展到更大的数据集,不必预先为所有项目创建和布局视图。因此,您的请求从根本上与ListView的工作方式冲突——ListView根本不知道其所有项的布局方式,因此无法自动确保它们以某种方式对齐

您只需适当地编写项目布局,就可以确保它们与您自己对齐。例如,在UI中,通常会有一个图标后跟一个标签。如果确保图标为特定大小,则所有列表项都将对齐。如果您处理的是更具动态性(如文本)的元素,那么您也可以通过预先为这些元素设置特定的宽度来执行相同的操作


如果您真的想让UI动态计算元素大小并基于它们对齐所有行,那么TableLayout就是这么做的。它可以做到这一点,因为它总是将所有元素放在一起进行布局。如果您想允许在其中滚动,您可以像其他海报建议的那样将其包装在滚动视图中。请注意,随着行数的显著增加,这种方法将很快崩溃。

您可以使用
列表视图或
列表片段
,每次在
表格布局中使用单个
表格行
(可能使用android:stretchColumns=“0”)填充项目


每行都有一个
TableLayout
,因此可能效率很低,但它能实现您想要做的

Ya,我使用了GridView,但它强制每个列的大小相同。我认为为列表视图定制一个适配器是必要的,我想知道是否可以这样做。我试试看。ThanksupFront的大小听起来是最好的选择,因为数据将是一个相当大的数据集。谢谢你为什么认为每个人都需要根据整个数据集进行调整?你说得对,那太慢了。整个对齐点是对屏幕上的项目进行视觉上有吸引力的呈现。因此,只需与屏幕上显示的内容对齐即可。@AlexPi因此,当您滚动项目时,由于对齐方式的更改,项目开始显示为?A面临同样的问题,并创建了一个与已知ListView类似的处理方式的TableView(例如,使用适配器应用数据)。如果你想看看它或者在你的项目中使用它,你可以在上面找到它。这种方法肯定是非常低效的