根据一些文档,我可以在 Activity 或 Fragment 中使用 Loader,但兼容性包显示只有 FragmentActivity 具有 getLoaderManager() 方法。
由于旧的托管游标已被弃用,我们必须使用游标加载器。那么为什么要把这个数据管理功能与 UI 小部件的选择联系起来呢?对我来说完全是无稽之谈。
谢谢P。
根据一些文档,我可以在 Activity 或 Fragment 中使用 Loader,但兼容性包显示只有 FragmentActivity 具有 getLoaderManager() 方法。
由于旧的托管游标已被弃用,我们必须使用游标加载器。那么为什么要把这个数据管理功能与 UI 小部件的选择联系起来呢?对我来说完全是无稽之谈。
谢谢P。
由于旧的托管游标已被弃用,我们必须使用游标加载器。
不,托管游标仍然有效。通常,Android 中的“已弃用”意味着“我们会尽可能支持这种机制,但我们认为还有更好的选择”。
那么为什么要把这个数据管理功能与 UI 小部件的选择联系起来呢?
它不是。您不必使用片段来继承FragmentActivity
. 也欢迎您创建自己的LoaderManagerCapableActivity
,从中克隆相关数据成员和方法FragmentActivity
(源代码在您的硬盘上)。但是,LoaderManager
必须与活动相关联,因为它与活动生命周期相关联,托管游标也是如此。例如,LoaderManager
实例通过onRetainNonConfigurationInstance()
.
是的,为了获得 loaderManager,它必须与一个活动相关联,但是可以在不需要 loaderManger 的情况下使用加载器。
1) 实现 AsynTaskLoader。
2)实例化你在你的类中实现的加载器。
3) 为您的加载程序注册一个侦听器,以便加载完成后您将获得回调。
4)调用loader的startLoading方法。
5)加载完成后,将调用回调方法,您可以将加载的数据用于任何目的。