通过对Cairngorm,我们都了解,View接受用户的动作,并且触发事件,触发事件被控制器捕获,通过执行了相应的命令来执行操作,在命令操作中,我们可以选择使用服务的代理来访问远程数据,并且更新本地模型以达到是的模型绑定的View元素发生变化;
但是,然后,是不是所有的页面元素都能通过绑定模型来实现动态变化呢?不见得,那么,我们如何在Command访问View元素并且操控他呢?我们就必须借助ViewHelper和ViewLocator:
ViewHelper类实现接口IMXMLObject,首先自定义一个ViewHelper,然后在视图中引用它。
package domain.app.view{
import com.adobe.cairngorm.view.ViewHelper;
public class LoginViewHelper extends ViewHelper{
public function doSomething(){
//do something with the protected property view.
}
}
}
在视图中实例化这个ViewHelper
<helper:LoginViewHelper id="loginViewHelper"/>
然后就可以在Command中使用这个ViewHelper。
var loginViewHelper:LoginViewHelper=ViewLocator.getInstance().getViewHelper("loginViewHelper")
as LoginViewHelper;
loginViewHelper.doSomething();
本文介绍如何在Cairngorm框架中利用ViewHelper实现对视图元素的操作,包括自定义ViewHelper类、在视图中引用并实例化它,以及在Command中调用ViewHelper的方法。
437

被折叠的 条评论
为什么被折叠?



