位置: 编程技术 - 正文

高级控件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触摸事件回调方法)

  • 视同销售增值税申报表怎么填写
  • 工商年报中的资金数额怎么填
  • 教育培训行业是干什么的
  • 年初的进项税额计算公式
  • 企业未开票收入怎么发现
  • 制造费用折旧费转入生产成本吗
  • 供应商质量问题告知函
  • 小规模纳税人的税率是多少(含国、地税)
  • 分期缴纳土地出让金的契税
  • 净现值为什么要除以它的折现率
  • 企业为什么要签订集体合同
  • 景区门票入什么费用
  • 收购发票盖章盖谁的
  • 年终奖扣税和工资扣税
  • 差额征税的小微企业免税销售额
  • 公司免费使用我的肖像权用作商业
  • 怎么区分进和近
  • 含税房租
  • 商业汇票收款到什么账户
  • 进项发票没认证可以开红字申请单吗
  • linux获取网络设备的交换机网络
  • 忘记电脑开机密码怎么打开电脑
  • php 字符串函数
  • linux怎么启动.sh文件
  • 哪些发票不可以通过数电平台开具
  • OfcPfwSvc.exe - OfcPfwSvc是什么进程 有什么用
  • 其他应付款不需要支付的怎么处理,预算会计
  • 海关专用缴款书认证的步骤和说明
  • 增值税专用发票有几联?
  • 购买电脑固定资产怎么记账
  • redis主从复制如何保证不丢失数据
  • 海外佣金需要交税吗
  • 商品出入库台账
  • 房产税计入管理费用还是营业税金及附加
  • 推广费属于什么大类
  • 暂估价与发票价的区别
  • 不同单位发的劳务费会收税吗
  • 个人所得税报税孩子的夫妻双方都报吗
  • 纳税人遗失税务登记证件并按照规定
  • 综合所得算税公式
  • 金税四期介绍 王军
  • 暂估管理费用跨年账务处理
  • 企业职工福利费使用范围和标准
  • 收购发票如何确认成本
  • 实收资本的印花税什么时候申报
  • 无发票材料可以入材料账吗
  • 本月无进项发票需要去增值税发票认证平台吗
  • 新担保法2021和担保期限
  • 支票的使用流程图
  • 销售退货怎么开票
  • 发票丢失了怎么报销
  • win8.1还原系统
  • centos6.2安装教程
  • mac如何整理桌面图标
  • 苹果系统安装系统
  • win8补丁官网
  • 三种方法完美解决问题
  • win10系统中怎么安装安卓应用
  • win7禁用开机启动服务
  • Linux服务器架设指南百度网盘
  • win7删除文件
  • windows7中彻底删除文件的操作
  • 程序员基本入门知识
  • nodejs web3
  • css设置表格隔行换色
  • document.getElementById()为null
  • java面试题简书
  • (转)Unity3D NGUI在UI上显示3D模型
  • javascript中用于声明变量的关键字
  • jQuery插件在使用前都需要引入jQuery的js文件
  • jquery校验form表单
  • android设置移动网络灰色是什么原因
  • python黑魔法手册
  • 快速解决偏头痛的6个方法
  • 宁波鄞州区行政区划代码
  • 国税备案的作用是什么
  • 哈尔滨银行网上银行怎么开通
  • 广西小学成绩查询入口官网
  • 新能源车需要缴纳购置税吗?
  • 我国公益性企业有哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设