ContentObserver与DatasetObserver区别
来源:互联网 发布:上海黄金行情软件 编辑:程序博客网 时间:2024/04/28 14:35
1. ContentObserver
ContentObserver主要是通过Uri来监测特定的Databases的表,如果该Databases表有变动则会通知更新cursor中的数据。
如果使用ContentProvider操作数据库,在ContentProvider的query()方法中会通过Cursor.setNotificationUri()注册uri描述的表,在insert,delete,query操作之后都会调用getContext().getContentResolver().notifyChange()。是当uri描述的db表中有insert,delete,query操作之后,notifyChange()会通知该cursor注册的ContentObserver,并调用ContentObserver的onChange方法。CursorAdapter的onChange一般会调onContentChanged,在onContentChanged中调用Cursor.requery()来更新cursor中的数据。
用途:database table中有变动后通知用户刷新cursor中的数据。
2. DatasetObserver
DatasetObserver主要是当注册它的cursor中发生变动时会调用其中的方法,让用户做一些界面刷新等操作。
首先cursor通过registerDataSetObserver()注册DatasetObserver 当cursor数据有变动时,例如调用了cursor的requery(),会调用cursor的onChanged通知用户cursor中的内容有变动,用户可以在onChanged里做一些刷新界面的操作。一般会在onChanged里调用notifyDataSetChanged通知framework,framework收到通知会调用CursorAdapter的getView来做界面刷新等工作。
用途:cursor中的数据有变动时通知用户刷新界面。
- ContentObserver与DatasetObserver区别
- ContentObserver与DatasetObserver区别
- ContentObserver与DatasetObserver区别
- ContentObserver与DatasetObserver区别
- ContentObserver与DatasetObserver的区别
- ContentObserver与DatasetObserver的区别
- ContentObserver与DatasetObserver的用途与区别
- ContentObserver和DataSetObserver区别
- ContentObserver和DataSetObserver区别
- DatasetObserver与ContentObserver
- DatasetObserver与ContentObserver
- DatasetObserver与ContentObserver
- ContentObserver、DatasetObserver与notifyDataSetInvalidated、notifyDataSetChanged
- android ContentObserver和DatasetObserver的区别
- Android_ContentObserver与DatasetObserver区别
- ContentObserver DatasetObserver的作用
- android 中ContentObserver和DataSetObserver的使用
- DataSetObserver
- 获取checkbox选中的值的问题。。
- 记录
- nginx服务器简单搭建配置
- 每天学点MVC 【View传参】
- 网址收藏
- ContentObserver与DatasetObserver区别
- 汉诺塔 算法(递归和非递归算法)
- 沈园恋(写在前面)
- 查看當前數據庫索引情況
- PHP 函数库
- 如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?
- GCC函数入栈操作说明
- PHP,如何防止同一用户同一时间多次登录?
- 约数个数与约数和(质因素分解)