Robotlegs 怎么Mediate一个popup

在Flex里,PopUpManager会把popup创建到contextView外面的显示列表中,所以robotlegs就无法获悉这个view是什么时候被加载的,也就无法适时创建mediator了。要解决这个问题,我们可以在需要的时候手工创建mediator,比如:

// 关联view和mediator时
mediatorMap.mapView(MyPopupView, MyPopupViewMediator, null, false, false); //禁用自动创建和自动移除
 
// 需要弹出popup时
var popup:MyPopupView = new MyPopupView();
PopUpManager.addPopUp(popup, contextView);
mediatorMap.createMediator(popup);

需要移除popup的时候,可以在下面两种方法中任选一种:

mediatorMap.removeMediator(mediator);
//
mediatorMap.removeMediatorByView(popup);

参考资料:How to Mediate a Flex Popup

 

 

posted @ 2012-08-16 10:51  小小有  阅读(131)  评论(0)    收藏  举报