11

我有一个 ListView,其中包含有关具有评级的地点和到当前位置的距离的信息的项目。

这些项目被分类成组:

  • 1组:500m以内
  • 第二组:500m - 1km
  • 第三组:1km - 1.5km
  • ...

使用这些组,项目按其评级排序。

现在我通过我的自定义适配器(的扩展名BaseAdapter)将这些项目放入 中ListView,效果很好。

但是,我想做的是在每组的每个第一项之前放置一个分隔符。这个分隔符可以是一个TextView说法,例如500m - 1km,后面是ListView该组中的所有项目。

关于如何实现这一点的任何想法?

4

2 回答 2

19

这是一种完全符合您描述的实现。

那个是 GPLv3,因为它是从这个实现派生的,它是 GPLv3。

您也可以MergeAdapter为此使用 my,它具有 Apache License 2.0 的优势。只需将一组交替的 header TextViews 和Adapters 交给它,其中包含每个部分的内容价值。

或者,您可以查看所有这些并将它们的行为纳入您现有的Adapter课程中。诀窍是在正确的位置返回您的TextView标头,并正确实施诸如getViewTypeCount()getItemViewType()areAllItemsEnabled()isEnabled().

于 2009-10-22T11:40:09.373 回答
4

这是一个更好的实现,灵感来自 iOS 部分列表视图:http ://code.google.com/p/android-section-list/ 。关于它的一点是,即使您向下滚动部分,部分标题仍然可见。

于 2011-06-13T00:13:25.377 回答