2017-02-15 123 views
1

我想创建什么基本上是一个列表视图,但没有它是一个ListView。动态创建布局(类似于listview)

所以我现在有一个ListView,用CardView,TextView等拉起布局。但是我需要创建多个列表,但是listview包装内容并让我在视图内滚动 - 我不想要这个。我希望能够看到整个列表并在主视图中滚动。

我该如何使用CardView添加布局,而不是将其显示为ListView?如果我可以将适配器连接到线性布局或其他东西,会容易得多。

编辑:我知道我可以将它全部添加到XML中,但它看起来像在xml代码中看起来很糟糕。

+0

这是有点不清楚你想要完成什么。通过“让我在视图内滚动”,你的意思是你正在嵌套ListViews?通过“多个列表”,你是指列表1中的所有项目,然后是列表2中的所有项目等? – Krylez

+0

对不起,我的意思是它让我在列表视图中滚动。所以我会有一个名字列表,然后是另一个名字列表,但是最后一个列表不会出现在屏幕上,并且创建自己的滚动条。我希望能够滚动整个屏幕,每个列表的内容总是被扩展。 我试过使用ScrollView,但是,好吧......那可怕的错误。我可以制作一个大名单,但是我将如何处理不同的类别?也许这是更简单的方法,我让它太复杂哈哈。 – SomeGuyCalledBill

回答

1

ListView(和RecyclerView)做一个很重要的东西,很难独立实现自己的自制替代品的。幸运的是,有很多第三方解决方案可以解决您的特定问题。一个不错的选择是CWAC's MergeAdapter。它本质上是一个子适配器的包装。

要处理节标题,您可以使每个子适配器的第一个项目成为标题项目(相应地设置样式)。或者使用MergeAdapter'saddView()方法在每个addAdapter()调用之前添加“标题”视图。

+0

谢谢,我现在就研究一下,看起来确实如我所愿。 – SomeGuyCalledBill

+1

绝对做到了!再次感谢Krylez! – SomeGuyCalledBill