代码之家  ›  专栏  ›  技术社区  ›  Graham Borland

带节标题的Android适配器:性能问题

  •  0
  • Graham Borland  · 技术社区  · 14 年前

    我有一个自定义适配器来显示带有节标题的项目列表。我看过Jeff Sharkey的 SeparatedListAdapter 和公共软件 MergeAdapter 作为如何实现这一点的示例,我现在有了一个解决方案,它通过为每个部分的内容提供单独的适配器来工作。

    不过,这会造成一个很大的性能问题。在我的例子中,列表中可能有数千个项目,每个项目都有一个关联的日期,我想使用日期作为具有该日期的所有项目的节标题。

    所以,如果没有节标题,我只需要一个光标,它返回按日期排序的项目。又好又快。

    对于节标题,我目前正在执行以下操作:

    1. 一个用于选择数据集中所有不同日期的光标
    2. 对于每个不同的日期 ,返回与该日期匹配的项的单独光标
    3. 将日期(节标题)和每个日期项的单独simpleCursorAdapter倒入我的自定义适配器中。

    这需要生成比我想要的更多的数据库查询和游标,并且在ListView出现之前有几秒钟的延迟。

    我想可能有一个更简单的解决方案 getView 做一些聪明的事情,当日期在连续的项目之间发生变化时进行检测,然后自己潜入一个新的标题,因此只需要一个光标。有人能推荐一种方法吗?

    2 回复  |  直到 11 年前
        1
  •  2
  •   Timo Ohr    14 年前

    getView