最好使用光标适配器或arrays适配器

我有大约100的时间表存储在数据库中,需要根据需求显示它们,如基于每周,下周,下个月,超过时间表等要求。

加载应用程序启动时的所有时间表,并根据用户在arrays适配器中select的选项(每周,过期,每月等等)显示它们是否好。 或者在运行时使用查询,从数据库获取结果,并使用cusor来加载listview上的数据使用cusoradapter ?.

哪种方法是有效的?我觉得查询数据库总是很费力的操作? 这是真的吗?

Solutions Collecting From Web of "最好使用光标适配器或arrays适配器"

在你的情况下, CursorAdapter更适合存在数据库,因为它不会将所有logging加载到ArrayAdapter 。 它只加载可见的logging。 你正在查询的logging。 这里是CursorAdapter的文档。

将数据从Cursor公开到ListView小部件的适配器。

游标必须包含一个名为“_id”的列,否则这个类将不起作用。 此外,如果合并的游标在其“_id”列中具有重叠值,则对此类使用MergeCursor将不起作用。

从内容提供商的文档,所以它可能没有用。

如果使用完全在您自己的应用程序中,则不需要提供者使用SQLite数据库。

您可以通过ArrayAdapterselectCursorAdapter

更好地使用CursorLoader

CursorLoader在后台运行一个针对ContentProvider的asynchronous查询,并将结果返回给它所调用的Activity或FragmentActivity。 这允许Activity或FragmentActivity在查询进行中继续与用户进行交互。

装载机在Android 3.0中引入,装载机可以非常容易地将数据asynchronous加载到活动或片段中。