2011-05-14 67 views
0

如何彎曲我的主MXML文件分派自定義事件如何在柔性

分派自定義事件我已經把這段代碼controlmanagerevent派遣這一功能

private var ageVerifyMessage:AgeVerify = new AgeVerify(); 

public function onAgeVerifyFailed(event:ControlManagerEvent) : void 
    { 
     ageVerifyMessage.visible = true; 
     return; 
    }// end function 

我已經使用這個代碼

private function getUserDetailsHandler(event:ResultEvent) : void 
    { 
     userDetails = ResponseParser.parseUserDetails(event.result as Object); 
     if (!userDetails || !userDetails.age) 
     { 
      if (_flashVars.birth_date && _flashVars.birth_date != "" && _flashVars.birth_date.toString().split("/").length == 3) 
      { 
       reportConnectedUser(); 
      } 
      else 
      { 
       dispatchEvent(new ControlManagerEvent(ControlManagerEvent.onAgeVerifyFailed)); 
      } 
     } 
     else 
     { 
      reportConnectedUser(userDetails.age); 
     } 
     return; 
    }// end function 



private var _controller:IControlManager; 


public function initApp() : void 
    { 
     _controller.addEventListener(ControlManagerEvent.onServerStatusChange, onServerStatusChange); 
     _controller.addEventListener(ControlManagerEvent.onSelfCamFailed, onSelfCamFailed); 
     _controller.addEventListener(ControlManagerEvent.onNoCamerasFound, onNoCamerasFound); 
     _controller.addEventListener(ControlManagerEvent.onAgeVerifyFailed, onAgeVerifyFailed); 

_controller.initController(); 
     return; 
    }// end function 




<local:AgeVerify horizontalCenter="0" id="ageVerifyMessage1" verticalCenter="0" visible="false"/> 

我要問我是錯過了什麼,爲什麼我的customevents不工作

回答

1

從您的代碼中,我可以看到您正在監聽_controller的事件,但發送事件的對象不是_controller,而是this

+0

@ constantiner我已經用它像公共函數initApp():無效 \t \t {_controller.addEventListener(ControlManagerEvent.onAgeVerifyFailed,onAgeVerifyFailed);在哪裏私人var _controller = Icontrolmanager – 2011-05-14 14:51:09

+0

你可以編輯你的文章添加此代碼? – Constantiner 2011-05-14 14:53:15

+0

@康斯坦我有編輯代碼請參閱 – 2011-05-14 15:01:02

0

似乎_controller.dispatchEvent(YourEvent)應該工作。

或者,我假設你沒有使用像香菜或Swiz會無論如何框架,你_controller應該在組件樹那種根:

Application 
    IControlManager(_controller) 
     HBox 
      YourComponent 

當你發送的YourComponent一個冒泡事件,您的_controller將可以調用相應的偵聽器。

+0

'Event(type:String,bubbles:Boolean = false,cancelable:Boolean = false)',將'bubbles'設置爲'true'。 – 2011-08-26 13:28:42