【发布时间】:2013-01-05 01:10:58
【问题描述】:
我想使用 ViewPager 从单个光标(最初来自 ContentProvider)中显示每页的多个项目。布局将显示为网格,并将包括每个项目的图像和文本。列表中会有频繁的添加和删除,需要在 UI 中反映出来,而无需重建数据结构(这可能会排除下面的一些选项)。
当前进程:
- 在主要活动中实例化光标。
- 创建我自己的从接受光标的 PagerAdapter 扩展的光标适配器类。光标用于通过 getCount() 确定 ViewPager 将拥有的页数(然后根据每页显示的项目数进行调整)。
- 在 Cursor Adapter getItem 方法中,它创建最终将包含列表子集的片段。
在这个阶段,我不确定哪种方法最好。我:
A.将 Cursor 和索引传递给 Fragment 以显示下一页结果(例如,具有 setCursorIndex(Cursor, int) 方法。(即使在同一个 Activity 中,跨 Fragments 共享 Cursors 也会导致问题吗?) em>
B.传入将获得结果的 ContentUris 字符串列表。 (这是否会阻止更新列表而无需重建?)
C.构建一个包含项目的参数包(包含图像和文本的字节数组的列表)。 (由于使用图像,这似乎效率低下。)
D.在从适配器接收到起始索引的每个片段中重新创建一个新光标。 (效率低下?)
非常感谢您的帮助。
【问题讨论】:
标签: android android-viewpager android-cursor