在 ExpandableListView 中,如何在子结果的末尾再显示一行?
Posted
技术标签:
【中文标题】在 ExpandableListView 中,如何在子结果的末尾再显示一行?【英文标题】:In an ExpandableListView, how can I show one additional line at the end of the child results? 【发布时间】:2010-10-30 13:17:54 【问题描述】:我创建了一个自定义ExpandableListAdapter,一切正常。我想做的是在每个组的末尾添加不同类型的孩子。我尝试在getChildrenCount()
数字上加1,然后在getChildView()
方法中测试isLastChild
,但这似乎不起作用。
如果一个小组有三个孩子,我的工作如下所示:
团体 正常儿童 正常儿童 正常儿童但我真的很喜欢这样的东西:
团体 正常儿童 正常儿童 正常儿童 备用子这个想法是AlternateChild
可以链接到有关该组的更多信息。有什么想法吗?
编辑:
ListView 有 addFooterView(),这将允许您将页脚添加到整个 ListView
...想知道如何将它们添加到 ExpandableListView 的子项,或者是否有可能
【问题讨论】:
【参考方案1】:也许您可以尝试一种稍微不同的方法。
与其尝试直接向 ListView 添加一个额外的项目,不如尝试使用“isAlternateChild”标志(或子类化NormalChild
或创建一个IChild
接口)将一个“AlternateChild”对象添加到底层数据源使用NormalChild
和AlternateChild
扩展。
然后在getChildView
中,您可以检查视图中显示的对象是正常的还是替代的,并相应地创建或填充适当的视图类型。
通过将额外的对象直接添加到底层数据/列表中,您可以让 ExtendedListView 正常工作。作为额外的好处,这意味着您可以使 AlternateChild 数据动态化,并通过修改相应的对象轻松更改视图中显示的数据。
【讨论】:
这几乎就是我所做的。只是觉得应该有更好的方法。【参考方案2】:在我看来这是一个更好的answer
如果需要,我试图在每个组的最后一个孩子下方放置一个操作栏,这非常有用。由于操作栏与我的数据无关,因此我无法使用相同的对象。
【讨论】:
以上是关于在 ExpandableListView 中,如何在子结果的末尾再显示一行?的主要内容,如果未能解决你的问题,请参考以下文章
在键盘中单击完成时如何避免调用 ExpandableListView 中的 getChildView
在 ExpandableListView 中,如何在子结果的末尾再显示一行?
如何在expandablelistview中折叠组视图上方和下方的所有子视图?
如何从 ExpandableListView 的子项中删除分隔符?