具有多个标题的Android PinnedHeaderListView

时间:2013-09-05 22:28:54

标签: android android-listview android-custom-view

我正在寻找一个库/视图,它允许我有一个“固定标题”列表视图,其中多个标题堆叠在顶部。所以类似于当前联系人应用程序的工作方式,但是当B到达顶部时,而不是A消失,B将在其下方堆叠,然后是C,依此类推。

据我所知,如果标题太多,屏幕不动产可能会成​​为一个问题,但我的用例不需要超过2个或3个标题,因此在不久的将来它不应成为问题。

我一直在使用一些当前的PinnedHeaderListViews(比如https://github.com/JimiSmith/PinnedHeaderListView),但我没有看到一种简单的方法来调整它们以满足我的需要。有没有人知道任何可以实现这个目标的库或者我应该开始调整另一个库的地方?

提前致谢

1 个答案:

答案 0 :(得分:1)

编辑:

我在下面讨论的解决方案有一个主要缺陷,它不允许固定标头响应触摸事件。这对我来说是一个主要问题,因为我需要每个标题都是一个有自己独特响应的按钮。我研究过这个问题,经过大量的调整和改动后,我得到了一个更接近我想要的系统。它不再在底部引脚视图,但允许标题接受触摸事件,无论是固定还是列表。如果您想尝试一下,讨论和示例项目就在这里:

https://groups.google.com/d/msg/android-developers/VMr3CA_H798/G23oRmpfLKgJ

ORIGINAL:

经过更多搜索和稍微调整后,我找到了一个对我有用的解决方案。我最终使用了一些埋藏在Android源代码中的东西,并稍微调整了一下以处理我需要的数据结构...

在CompositeCursorAdapter中,我刚刚删除了Partition类,并将其替换为我需要的数据结构。这些更新导致PinnedHeaderListAdapter中的一些更新。我还必须创建另一个扩展PinnedHeaderListAdapter的适配器,它处理PinnedHeaderListAdapter和CompositeCursorAdapter的所有最终方法实现。使用这个我最终得到一个看起来像这样的列表...

One pinned header Stacked pinned headers

如果有人需要更多详细信息,请在下面发表评论,我会尝试回答任何问题或根据需要发布代码