包com
{
进口com.bind.BaseData;
进口flash.events.IEventDispatcher;
公共最终类用户扩展BaseData
{
,公共函数用户(目标:IEventDispatcher=null)
,{
,,超级(目标),
,}
,
var _hp: int=20;
,公共函数集惠普(价值:int):空白
,{
,,//设置并注册(在基类中完成设置新值并广播)
,,
,}
,公共函数得到惠普():int
,{
,,返回_hp;
,}
,
,var _state:使用uint=10;
,
,公共函数设置状态(价值:使用uint):空白
,{
,}
,公共函数获得国家():使用uint
,{
,,返回this._state;
,}
}
}
假设, package com { ,import com.bind.BindTools; , ,import flash.display.Sprite;/* * *,才能模拟一个窗口,,,当用户中惠普改变时,,,此窗口的相应值也会随之改变 ,*/,public final  class UserView  extends 雪碧 ,{ ,,,,private var user :, user =,空; ,, private 才能var _hp_view :, int =, 0; public 才能function set  HP_view(时间:,value int ),:无效 {才能 ,,跟踪(“HP_view 的值发生了改变,,”,,+,_hp_view +,,,→“, +, value ); ,,this._hp_view =,价值; ,, ,,} ,, public 才能;function  UserView(时间:,user user ) {才能 ,,超级(); ,,this.user =,用户; ,,//绑定属性,- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -//,,,却;能够→,本类 ,,//,HP_view →,本类需要与用户类(第三个参数)中惠普属性映射的属性 ,,//user 模型类 ,,//惠普 ,,//,true 是否用惠普初始化HP_view ,,BindTools.bindProperty(却;能够的不同之处是,“HP_view”,,, user ,,“惠普”,,,true ); ,, ,,//绑定回调方法- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ,,//,this._user_state_callback 回调方法 ,,//user 模型类 ,,//,State 需要监听的用户的属性 ,,//,true 是否初始化调用_user_state_callback ,,BindTools.bindSetter (this._user_state_callback 的不同之处是,user ,,“状态”,,,true ); ,,} private 才能;function  _user_state_callback(时间:,value uint ),:无效 {才能 ,,跟踪(“状态回调,得到的值为,:“,+,value ); ,,} ,} }
测试:
包 { ,import com.User; ,import com.UserView; , ,import flash.display.Sprite; , ,public class  BindTest_AS extends 雪碧 ,{ public 才能;function  BindTest_AS () {才能 ,,var user :, user =, new 用户(); ,,var view_sprite :, UserView =, new UserView (, user ); ,,this.addChild (, view_sprite ); ,,user.HP =, 200; ,,user.State =, 5; ,, ,,跟踪(,“user.HP”, user.HP ); ,,跟踪(,“user.State”, user.State ); ,, ,,} ,} }
结果:
附件:http://down.51cto.com/data/2366826