总结一下Flex中的一般的数据绑定的几种实现方法。
首先先讲一下啥叫绑定呢?说白了就是把两个或几个东西绑在一起,一个变化的时候其他的也得跟着他变。这就产生了动态的效果了。其实叫数据绑定,到不如叫自动刷新合适。
1、用“{}”来进行绑定
<mx:TextInput id="txtSource" />
<mx:Text id="txtDestination" text="{txtSource.text}"/>
如果希望双向绑定的话,可以这样
<mx:TextInput id="{txtDestination.text}" />
<mx:Text id="txtDestination" text="{txtSource.text}"/>
在“{}”这中间,可以计算表达式、连接字符串、条件表达式、函数,反正大概就是可以一句话写下的代码都可以。、
连接字符串不用“+”,直接写在后面
如
<mx:TextInput id="txtSource" />
<mx:Text id="txtDestination" text="{Number(txtSource.text)*100}"/>
2、用<mx:Binding>标签
<mx:Binding source="Number(txtSource.text) * 100" destination="txtDestination.text" />
<mx:TextInput id="txtSource" />
<mx:TextInput id="txtDestination"/>
如果希望双向绑定的话,<mx:Binding>标签中有个 twoWay 属性,可以设置true或false来选择单向的还是双向的。
3、使用ActionScript来进行数据绑定
使用类mx.binding.utils.BindingUtils来创建mx.binding.utils.ChangeWatcher对象
有两个方法,bindProperty 将公用属性(site
Object 上的 prop
)绑定到可绑定属性
bindSetter 将setter 函数(setter
)绑定到可绑定属性