Array 和 ArrayCollection 区别

 ArrayCollection 实现接口 ICollectionView,在 Flex 的类定义内属于[数据集],他提供更强大的检索、过滤、排序、分类、更新监控等功能。FDK2提供的类似的类还有 XMLListCollection

      这两者差别在于如果用 array 在作为 data provider 绑定于 control 之上,就无法获得控件的更新,除非控件被重新绘制或者 data provider 被重新指定,而 Collection 则是将 array 的副本存储于 Collection 类的某个对象之中,其特点是 Collection 类本身就具备了确保数据同步的方法,例子如下(取自 adobe 内部工程师 training 示例,稍有改变)

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
	<mx:Script>
		<![CDATA[
			import mx.collections.ArrayCollection;
			[Bindable]
			public var myArray:Array = ["北京", "上海", "深圳"];
			[Bindable]
			public var myCollection:ArrayCollection = new ArrayCollection(myArray);
			
			public function addCountryToArray(country:String):void {
				myArray.push(country);
			}
			
			public function addCountryToCollection(country:String):void {
				myCollection.addItem(country);
			}
		]]>
	</mx:Script>
	<mx:TextInput id="countryTextInput" text="广州"/>
	<mx:Label text="Bound to Array (Raw Object)"/>
	<mx:Button click="addCountryToArray(countryTextInput.text)" label="Add Country to Array"/>
	<mx:List dataProvider="{myArray}" width="200"/>
	<mx:Label text="Bound to Collection"/>
	<mx:Button click="addCountryToCollection(countryTextInput.text)" label="Add Country to Collection"/>
	<mx:List dataProvider="{myCollection}" width="200"/>
</mx:Application>

 

 

 

ArrayCollection的几个使用技巧:

var arr:Array = new Array();

var ac:ArrayCollection = new ArrayCollection();

ac.disableAutoUpdate();
arr.shift();
arr.push(new Object());
ac.enableAutoUpdate();
ac.source = arr;//某些情况下,更改数据源AC不能触发页面刷新,但是更改数据源ac的source却可以。

TC397 EB MCAL开发从0开始系列 之 [17.1] ETH配置实战 - ping/发送 TC397 MCAL 从0开始之 ETH ping测试 阅读详情

相关推荐

CANoe基础讲解01:从零开始使用CANoe轻松搭建你的第一个CAN网络

本文是一篇CANoe软件入门实操指南,逐步演示了如何从零创建并运行一个CAN FD仿真工程。内容包括:启动软件、配置硬件通道与网络、加载DBC数据库、使用CAPL编写仿真节点发送CAN报文,最终启动测量并在Trace窗口中查看通信结果。通过七个清晰步骤,帮助初学者快速掌握CANoe基本操作,完成首个可运行的仿真网络搭建

车载网络小D的博客 1573

FLEX Array和ArrayCollection的区别

当Array的数据发生变化的时候,用它作为数据源的控件不能感知这种变化。 例如:myArray.push("new value"); 这时,如果一个List用它作为dataProvider,List的列表中不会增加新加入的这个值。 而当ArrayCollection的数据发生变化的时候,能够通知控件发生变化。 例如:myArrayCollection.addItem("new i...

Just Code 182

STM32标准库下载保姆级教程:2024最新官网免注册直接下载方法

本文提供2024年最新STM32标准库免注册下载方法,包括直接下载链接、GitHub镜像仓库和开发工具内置库三种途径。详细介绍了标准外设库的优势、配置步骤及常见问题解决方案,帮助开发者快速获取并应用这一重要开发资源。

weixin_29163581的博客 367

Array与ArrayCollection的区别

当Array的数据发生变化的时候,用它作为数据源的控件不能感知这种变化。 例如:myArray.push("new value"); 这时,如果一个List用它作为dataProvider,List的列表中不会增加新加入的这个值。 而当ArrayCollection的数据发生变化的时候,能够通知控件发生变化。 例如:myArrayCollection.addItem("new

俊哥 519

实战指南:CentOS 7下VOS3000 8.0从零部署到授权激活全流程

本文提供了一份详尽的CentOS 7系统下部署VOS3000 8.0的实战指南。从环境准备、使用FileZilla上传安装包、执行自动化安装脚本,到获取软件码、利用注册机生成授权文件并激活,手把手带领用户完成从零部署到投入商用的全流程,确保系统稳定运行。

zero1的博客 896

告别 RPA 和 Selenium,MCP + Playwright 成为自动化开发新宠!

摘要: 随着数字化转型加速,传统自动化工具(如RPA和Selenium)在复杂场景中暴露出开发成本高、灵活性不足等问题。新一代解决方案MCP(Model Context Protocol)与Playwright的结合,通过AI与自动化的无缝对接,实现了智能化的任务处理。MCP支持自然语言交互和上下文感知,开发者无需编写复杂代码即可生成自动化脚本;Playwright则提供多浏览器支持、高性能和易用性。二者结合显著提升开发效率,使自动化更智能、灵活。文章还对比了VS Code与Trae中配置Playwrigh

我先测了 2209

Flex Array和ArrayCollection的区别

<br />当Array的数据发生变化的时候,用它作为数据源的控件不能感知这种变化。<br />例如:myArray.push("new value"); 这时,如果一个List用它作为dataProvider,List的列表中不会增加新加入的这个值。<br />而当ArrayCollection的数据发生变化的时候,能够通知控件发生变化。<br />例如:myArrayCollection.addItem("new item"); 这时,如果一个控件List用它作为dataProvider,List列表中

ystyaoshengting的专栏 1674

Java电商秒杀系统性能优化(一)——电商秒杀系统框架回顾

电商秒杀系统框架回顾项目简介外部依赖框架回顾项目要点项目中存在的问题小结 课程是免费的,课程地址如下:SpringBoot搭建电商秒杀项目,课程真的很棒,作者的思路很清晰,建议各位读者可以跟着视频练习一下这个项目; 项目简介 通过SpringBoot快速搭建的前后端分离的电商基础秒杀项目。项目通过应用领域驱动型的分层模型设计方式去完成:用户otp注册、登陆、查看、商品列表、进入商品详情以及倒计时秒...

ghw15221836342的博客 3720

Flex中ArrayCollection与Array的区别

为什么80%的码农都做不了架构师?>>> ...

weixin_34234721的博客 164

添加USB wifi驱动到RK3568

在日常开发中我们经常需要用到wifi功能,一般来说soc厂家都会事先做好了几个厂家的wifi驱动在内核源码目录下,我们只需要按原理图配置对应的设备树即可。常用的wifi的接口有:USBSDIOPCIE下面来介绍这这种接口是如何使用wifi芯片。提示:以下是本篇文章正文内容,下面案例可供参考本小节介绍了一个配置一个USBwifi驱动的整个流程,并没有介绍到SDIO,下小节基于AP6256介绍如何使用。

qq_24093081的博客 2049

【安卓逆向】python版本 sha源码

免责声明本文内容仅供学习交流使用,严禁用于商业和非法用途。抓包数据、敏感网址以及数据接口已进行脱敏处理。 注:如有引用,请标注文章地址!!!!!!!

Coodekun的博客 817

Flex学习笔记:ArrayCollection和Array的区别

ArrayCollection实现接口ICollectionView,在Flex的类定义内属于[数据集],他提供更强大的检索、过滤、排序、分类、更新监控等功能。FDK2提供的类似的类还有XMLListCollection 这两者差别在于如果用array在作为data provi

软件哲学 1676

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Array和ArrayCollection的区别

从两个blog中获取的信息 //////信息1 start 当Array的数据发生变化的时候,用它作为数据源的控件不能感知这种变化。例如:myArray.push("new value"); 这时,如果一个List用它作为dataProvider,List的列表中不会增加新加入的这个值。而当ArrayCollection的数据发生变化的时候,能够通知控件发生变化。例如:myArrayCol...

IMyself 179

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

【Flex】Array 和 ArrayCollection 区别

今天看到这么一篇帖子,但是我对他的正确性表示怀疑。 因为,我就是用Array做的dataProvider,效果是可以得到更新的。 Array和ArrayConllection做dataProvider,做VO,各有优缺点,相比之下 我还是选择了Array。 因为 1)取数组下标的应用要比让数组扩展的应用更多 2)后台JavaBean也用的是数组[] 3)for循环数组似乎比for e...

从Java看编程 203

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

FLEX Array和ArrayCollection的区别

当Array的数据发生变化的时候,用它作为数据源的控件不能感知这种变化。 例如:myArray.push("new value"); 这时,如果一个List用它作为dataProvider,List的列表中不会增加新加入的这个值。 而当ArrayCollection的数据发生变化的时候,能够通知控件发生变化。 例如:myArrayCollection.addItem("new ite...

iteye_12813的博客 112

ArrayCollection与Array的区别

ArrayCollection实现接口ICollectionView,在Flex的类定义内属于[数据集],他提供更强大的检索、过滤、排序、分类、更新监控等功能。FDK2提供的类似的类还有XMLListCollection这两者差别在于如果用array在作为data provider绑定于control之上,就无法获得控件的更新,除非控件被重新绘制或者data provider被重新指定,而Co

o(∩_∩)o贴吧 658

【Flex】的Array和ArrayCollection的用法和区别

1.array作为控件使用 FLEX3写法: <mx:Array id=”barname”> <mx:String>Flash</mx:String> <mx:String>Director</mx:String> <mx:String>Dreamweave...

u013938578的博客 688
上一篇: flex with 关键字用法
下一篇: 关于flex程序的内存优化
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值