简介

Android在3.0之后中引入了Loaders,使用Loader可以很方便的来在Activity中加载数据,并且Activity能够管理Loader的生命周期,使之与Activity的生命周期同步。并且当手机配置项发生改变Activity重新创建时Loader能够retain而不用重新创建。Android在3.0引入Loader来代替之前版本中 managedQuery(Uri, String, String, String, String) 方法返回的Cursor,来让应用响应更快。下面主要是这两者的区别和介绍。

Android 3.0之后加入的Loader

1、任何一个Activity和Fragment中都可用 2、异步加载数据 3、监听数据数据源的改变,并且能够自动更新新添加的数据 4、当手机配置项发生改变时,能自动重新连接到Loader's 的cursor(retain),而不用重新查询数据 5、兼容包中也包含此特性,3.0之前的版本也可使用Loaders

在Android3.0之前

1、 public void startManagingCursor(Cursor) 会在Activity的生命周期管理cursor's的生命周期,Activity stop时cursor会变为无效,destroy时cursor会close(),且不能处理Activity配置项发生改变的情况 2、 public Cursor managedQuery(Uri, String, String, String, String) 返回一个Cursor,在返回之前会调用 startManagingCursor(Cursor)方法,让Activity来管理此Cursor的生命周期,当有几个 明显的几个缺点 (1)query on the main UI thread (不是异步加载数据),当加载的数据量一多时,应用反应迟钝,很容易引发ANR (2)配置项发生改变时会requery,而不是retain已有的数据 (3)不能够监听到数据源的改变












更多相关文章

  1. mybatisplus的坑 insert标签insert into select无参数问题的解决
  2. python起点网月票榜字体反爬案例
  3. Android(安卓)操作SQLite数据库(初步)-在程序中删除数据库
  4. Android(安卓)APN设置
  5. Android实现数据存储技术
  6. Android笔试的一部分知识点
  7. 简单实现Android(安卓)AudioReccord录音方式
  8. Android的Handler总结(1)
  9. Android(安卓)流媒体系列(一)

随机推荐

  1. Android中对Handle机制的理解
  2. android 设置布局动画
  3. Android(安卓)ListView 去除边缘阴影、选
  4. Android开发从入门到精通(项目案例版)——
  5. Android(安卓)2.0 平台的亮点
  6. android TextView selector点击样式改变
  7. android 更新版本号
  8. Android(安卓)ProgressBar控件理解
  9. 【Android(安卓)界面效果14】RelativeLay
  10. Android学习笔记-界面和数据存储以及一些