位置: 编程技术 - 正文

高级控件AdapterView(二):通过Observer实现数据、视图同步刷新(高级控件动态数据加载过程有哪些)

编辑:rootadmin
多条目控件AdapterView是仿MVC设计模式进行设计的,即AdapterView与数据是分离的,AdapterView并不直接操作数据,而是利用中间件适配器Adapter,实际上,完整的AdapterView显示是三个逻辑部分:AdapterView&#;Adapter&#;Data,Adapter相当于MVC中的控制器C,AdapterView相当于MVC中的视图V,顺便说一句,Android程序设计,也是利用MVC控制模式。既然视图与数据是分离的,那么当数据有更新时,视图显然无法自动更新,Adapter必须实时监控数据变化并刷新视图,这里用到的是Observer(观察者模式)。一、DataSetObserver类DataSetObserver类的API这样描述:DataSetObserver(观察者)通常设置给Cursor或Adapter,如果数据发生变化则回调该类方法。DataSetObserver类无法单独调用,必须配合DataSetObservable类使用。该类的实例即是Observer,观察者的刷新视图行为是由onChanged以及onInvalidated方法决定的,通常在AdapterView控件,如ListView中继承该类,并通过重写这两个方法,实现针对性的视图刷新。

推荐整理分享高级控件AdapterView(二):通过Observer实现数据、视图同步刷新(高级控件动态数据加载过程有哪些),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android高级控件实验报告,高级控件 PPT,高级控件动态数据加载过程有哪些,高级控件动态数据加载过程有哪些,高级控件代码,高级控件代码,高级控件代码,高级控件 PPT 课程思政,内容如对您有帮助,希望把文章链接给更多的朋友!

二、Observable类继承体系

2.1、Observable基类

这是一个抽象基类,该类主要提供对Observer进行注册或解除注册到ArrayList数据集(Observer必须绑定到某个数据集才能监测)。 源码如下:

2.2、DataSetObservable类

这是一个可实例化类,通常在对ArrayList数据进行更新后,主动调用notifyChanged()函数,若ArrayList数据失效,比如给视图绑定新的数据源等等,调用notifyInvalidated,源码如下:

高级控件AdapterView(二):通过Observer实现数据、视图同步刷新(高级控件动态数据加载过程有哪些)

三、适配器Adapter中与DataSetObserver有关的方法

3.1、adapter中相关源码3.2、BaseAdapter中相关源码

3.3、小结

Adapter主要是注册一个Observer,然后在数据有变化时,主动调用notifyDataSetChanged()或notifyInvalidated(),而决定数据在出现变化后的行为(主要是onchanged()方法决定),一般需要在AdapterView中进行个性定制。

四、AdapterView中与DataSetObserver有关的方法

4.1、AdapterViewAdapterView中写了一个继承DataSetObserver的内部类AdapterDataSetObserver,主要是重新onChanged(),onInvalidated()方法,以执行AdapterView的刷新视图操作4.2、ListViewListView中,主要是setAdapter()方法将适配器Adapter绑定到ListView,并设置Adapter的观察者为AdapterDataSetObserver。4.3、小结AdapterView控件主要定义Observer行为,即Onchanged()和onInvalidated()方法,然后通过Adapter的注册方法registerDataSetObserver()对定制的mDataSetObserver注册。

五、简单Demo

实现长按长按ListView并删除所在项,主要代码如下:

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android 触摸事件传递机制 android系统中的每个View的子类都具有下面三个和TouchEvent处理密切相关的方法:1)publicbooleandispatchTouchEvent(MotionEventev)这个方法用来分发TouchEvent2)publicbool

RSA加密解密及数字签名Java实现 RSA加密解密及数字签名Java实现RSA公钥加密算法是年由罗纳德·李维斯特(RonRivest)、阿迪·萨莫尔(AdiShamir)和伦纳德·阿德曼(LeonardAdleman)一起提

定制Android ListView 快速滚动的滚动条-fast scroll bar thumb 1.方法一:privatevoidinitScrollBar(){try{Fieldf=AbsListView.class.getDeclaredField(mFastScroller);f.setAccessible(true);Objecto=f.get(mListView);f=f.getType().getDeclaredField(mThumbDrawable);f.se

标签: 高级控件动态数据加载过程有哪些

本文链接地址:https://www.jiuchutong.com/biancheng/370981.html 转载请保留说明!

上一篇:如何解决Android SDK中离线文档打开慢的问题(如何解决android代码红线)

下一篇:Android 触摸事件传递机制(Android触摸事件回调方法)

  • 一般纳税人内账税金的处理
  • 税前扣除项目主要内容?
  • 劳务发票要交多少税费
  • 进仓费税率
  • 土地增值税预缴税率
  • 减免税款借贷方表示
  • 季度所得税申报错误,一定要更改吗
  • 减免税款会计分录
  • 机动车发票怎么入账
  • 印花税核定征收的计税依据
  • 特殊贸易区域怎样选择
  • 私售发票如何处罚
  • 长期股权投资的初始投资成本
  • 视同销售税率如何确定?
  • 实收资本印花税税率多少
  • 外请人员所发生的费用怎么做账
  • 企业核定征收的好处
  • 冲红的进项税发票入账处理
  • 结转出租包装物的成本
  • 申报工会经费怎么做账
  • 多交的增值税可以抵所得税吗?
  • 按年缴纳年金的企业缴费部分,应按照全年一次性奖金
  • 收到退回增值税和附加税怎么处理
  • 苹果icloud储存空间怎么查看内容
  • 固定资产进项发票
  • 在linux系统中 用来存放系统所需
  • 重建索引命令
  • 如何计算旧城拆迁面积
  • 增值税专票跨月但未认证,怎么作废
  • conime进程太多
  • 固定资产加速折旧方法
  • 赞助支出计入应纳税所得额吗
  • monaco编辑器的自定义提示
  • 购买材料结转成本的会计分录
  • 一品红叶发黄咋回事儿
  • 小企业会计科目表
  • 存货跌价准备的分录
  • 工会经费申报表填写说明
  • 报个税时显示扣缴单位无有效的税费种认定信息
  • 公司亏损注销了怎么处理
  • 累计减除费用多还是少好
  • php怎么设置图片的大小
  • Python中tkinter的 Variable类
  • 营业执照上的注册资金可以改吗
  • 诉讼代理费计入事业单位什么科目
  • 现金流量表的填列方法
  • 快递公司的收件员好干吗
  • Qt Port of WebKit ¶
  • linux数据库导入命令
  • 电子商业承兑到期后多长时间能收到款
  • 小规模纳税人税率2023年是多少
  • Win2008中SqlServer2008 无法打开错误日志文件导致无法启动的解决方法
  • 固定资产清理借方登记的项目
  • 购买原材料没有发票能入库吗
  • 公司账户收入多少要扣税
  • 服装厂做的都是什么产品
  • 印花税为什么不用计提
  • 自来水差额征税申报表填写
  • 投资其他公司做什么科目
  • 公司开业之前产假怎么算
  • 纳税筹划有哪些特点以及原则?
  • 数据库预处理语句
  • 在Vista、Windows7下玩英雄无敌3绿色版
  • ubuntu20.04升级
  • win7进bios设置启动盘
  • 定制xp系统
  • centos创建一个文件
  • win10系统本地用户和组怎么添加
  • 如何解决win7系统转为xp系统出现蓝屏怎么办啊
  • windows打开
  • unity-3d
  • qt5 opengl
  • html中<
  • ajax multipart/form-data
  • 基于网络创新形成的大数据的最突出特征是什么?( )
  • python列出所有文件名
  • 国家税务总局网站官网福建税务局
  • 2020宜兴市民中心营业时间
  • 增值税有哪些税目
  • 襄城是现在的哪个城市
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设