哪个适配器选择?

时间:2012-07-31 05:57:48

标签: android cursor android-arrayadapter simplecursoradapter listadapter

我有两个方法从database读取相同的数据,第一个返回Cursor,第二个返回List个对象。现在我使用{{1和第一个方法一样,我也可以使用第二个方法和适当的适配器。 这两种方式中哪一种更好用,第二种方式应该使用哪种适配器?

对不起英语不好

1 个答案:

答案 0 :(得分:2)

绝对选择SimpleCursorAdapter。如果可能,请始终使用Cursor如果您的数据来自database,则可以通过不创建List个对象来节省内存。在时间和内存消耗方面,使用Java创建对象的成本很高,您必须牢记您在资源有限的移动平台上。如果您使用List ListView个对象,请使用从ArrayAdapter扩展的自定义适配器。

虽然您的数据来自Cursor,但使用database并不总是直截了当的。假设您将地点存储在由其名称和位置定义的database中,并且您希望将其显示在距离当前位置的距离排序的ListView中。除非您不在相邻列中存储相对距离,否则很难执行返回排序结果的查询。但是,您可以Cursor将其转换为List个对象,并在将此集合发送到ListView之前对其进行排序。