Loader加载器的一些理解

  Android3.0后提供了Loader机制,来处理数据加载的实现,你可以通过继承AsyncTaskLoader或是CursorLoader来进行相应的数据加载操作。
  使用Loader加载主要涉及到4个类:

  • Loader
    定义了一个加载实现,比如启动、暂停、取消等方法。
  • LoaderInfo
    指的是一个具体的加载过程,它持有一个加载实现Loader
  • LoaderManager
    管理着多个加载过程LoaderInfo。
  • LoaderManager.LoaderCallbacks
    提供与外部交互的回调方法。提供具体的加载类Loader和结果的处理。

  Activity或Fragment持有LoaderManager对象,通过调用方法:
initLoader(int id, Bundle args, LoaderManager.LoaderCallbacks<D> callback)
会创建一个LoaderInfo对象,保存在SparseArray集合中,并把callback赋值给LoaderInfo。
  当Activity或fragment调用onStart方法是,会调用LoaderManager的doStart方法,会遍历所有的LoaderInfo执行其start方法,这时通过callback的onCreateLoader方法获取具体的加载类Loader,执行Loader的加载操作。
  LoaderInfo本身是实现Loader.OnLoadCompleteListener接口的,当Loader执行完后通过OnLoadCompleteListener通知LoaderInfo,LoaderInfo再调用callback的onLoadComplete传递给外部处理结果数据。

Paste_Image.png

参考

http://www.jcodecraeer.com/a/anzhuokaifa/developer/2014/0325/1602.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容