安卓:ListView中自定义分隔符(甚至项目)depening上项目
问题描述:
的内容我已经包含关于与评级和距离到当前位置的地方信息项一个ListView。安卓:ListView中自定义分隔符(甚至项目)depening上项目
项目被分为两组:
- 第1组:500米之内
- 组2:500MHz - 1公里
- 组3:1公里 - 1.5公里
- ...
通过这些群组,这些项目按其评级排序。
现在我通过我的自定义适配器(BaseAdapter
的扩展名)将这些项目放入ListView
,这很好地工作。
但是,我想要做的是在每个组的每个第一项之前放置一个分隔符。该分隔符可以是例如TextView
, 500m - 1km后面是该组中的所有ListView
项。
关于如何实现这一点的任何想法?
答
Here is one implementation这完全符合你的描述。
那一个是GPLv3,因为它来自于this implementation,这是GPLv3。
您也可以使用我的MergeAdapter
,因为它具有Apache License 2.0的优势。只需交付一组包含标题TextView
和Adapter
s的标题,其中包含每个部分的内容。
或者,您可以查看所有这些信息并将其行为转移到您现有的Adapter
课程中。诀窍是将TextView
标题返回到正确的位置,并正确实施诸如getViewTypeCount()
,getItemViewType()
,areAllItemsEnabled()
和isEnabled()
之类的方法。
你有屏幕截图吗? – Tawani 2009-10-22 14:30:49
我的高级Android手册中有第一个屏幕截图。在Jeff Sharkey的网站上有第二张截图,链接到上面。无论如何,我没有第三个屏幕截图,很大程度上是因为它不会是MergeAdapter的屏幕截图,而是您投入MergeAdapter的任何屏幕截图。 – CommonsWare 2009-10-22 14:37:44
您的SectionedAdapter的实现工作得很好。谢谢!一个简单的问题:有没有办法从每个部分的最后一个列表项中删除底部分隔符? – jeffh 2010-11-20 06:25:12