我身边有100的存储在其中需要根据基于像,每周一次,下周,下个月需求列表视图来显示它们的数据库时间表,在时间表因等..最好使用光标适配器或阵列适配器
是好上加载启动应用程序的所有日程,并显示他们根据在阵列适配器选项用户选择(每周,逾期,每月等)。或者在运行时使用查询,从数据库获取结果并使用cusor使用cusoradapter?在listview上加载数据。
哪种方法effeciant?我觉得总是询问DB是expesive操作?这是真的吗?
我身边有100的存储在其中需要根据基于像,每周一次,下周,下个月需求列表视图来显示它们的数据库时间表,在时间表因等..最好使用光标适配器或阵列适配器
是好上加载启动应用程序的所有日程,并显示他们根据在阵列适配器选项用户选择(每周,逾期,每月等)。或者在运行时使用查询,从数据库获取结果并使用cusor使用cusoradapter?在listview上加载数据。
哪种方法effeciant?我觉得总是询问DB是expesive操作?这是真的吗?
在你的情况下,当存在数据库时,CursorAdapter
更合适,因为它不会将所有记录加载为ArrayAdapter
。它仅加载可见记录或正在查询的记录。以下是CursorAdapter的文档:
将数据从光标公开到ListView小部件的适配器。
光标必须包含一个名为“_id”列或这个类将无法正常工作。此外,如果合并的游标在其“_id”列中具有重叠值,则对此类使用MergeCursor将不起作用。
由于Content provider的文档,所以它可能对你没用。
如果使用完全在您自己的应用程序中,则不需要提供者使用SQLite数据库。
您可以选择CursorAdapter
而不是ArrayAdapter
。
做,我们需要使用装载机使用光标适配器? – Naruto
如果你愿意,你可以使用装载机光标适配器看到这个[如何CursorLoader与LoaderManager知道光标发送到一个CursorAdapter?](http://stackoverflow.com/questions/11150527/how-does-cursorloader-with- loadermanager-know-to-send-the-cursor-to-a-cursoradap) – 2014-01-15 07:29:59
感谢您使用有用的链接(+1 for tat),这里有一件事情,内容提供者和加载者都依赖于彼此吗?装载机?你能澄清我的疑问吗?谢谢 – Naruto
更好地利用CursorLoader
CursorLoader
一个运行在对一个ContentProvider的背景中的异步查询,并将结果返回到从它被称为活性或FragmentActivity。这允许Activity或FragmentActivity在查询进行时继续与用户交互。
装载机 Android中3.0引入,装载机可以很容易在一个活动或片段异步加载数据。
http://stackoverflow.com/questions/8556929/cursoradapter-vs-arrayadapter-for-a-listview请看看这个 – 2014-01-15 06:05:45
'请点击左边的复选标记来解决您的问题你most' – 2014-01-23 09:02:34
中超,做@ user3110424,感谢和抱歉延迟:) – Naruto