StickyListHeaders和CursorAdapter问题,是否可以使用created_at日期创建粘性标头

时间:2013-09-12 11:59:09

标签: android listview android-listview

我有一个简单的Activity,我使用LoaderManager来获取游标中的数据库结果。 这很有效,但问题是当我尝试使用StickyListHeader显示按created at日期分组的结果时。

StickyListHeader API说

  

您的适配器必须实现StickyListHeadersAdapter接口才能使用StickyListHeadersListView。 getHeaderId()必须为每个部分返回一个唯一的整数。具有字母部分的列表的有效实现是返回该部分所属部分的char值。

  1. 在渲染列表本身(newView/bindView)期间检查对象/行是否属于单个组(基于created_at)是一个好习惯吗?比如说,我已经定义了一个方法isANewGroup,它通过比较游标中当前元素和前一个元素的created_at属性来返回true或false。

  2. StickyListHeader的工作方式感到困惑。有人能指出一个适合我的方向的好方向吗?

1 个答案:

答案 0 :(得分:-2)

我自己想通了。

小组是否检查了bindView并使用了sectionMap(一个简单的SparseIntArray)来跟踪这些群组。在getHeaderID上,我从sectionMap返回了与每个项目位置对应的groupID。

附加我的自定义分区适配器的样本gist