现在的位置: 首页 > 综合 > 正文

flex 自定义事情处理

2013年10月22日 ⁄ 综合 ⁄ 共 1270字 ⁄ 字号 评论关闭

参照资料写个例子

事件

import flash.events.Event;
 import flash.events.EventDispatcher;
 import spark.components.*;
 public class LoginEvent extends Event
 {
  public static const ET:String = "LoginEvent";
  public static var viewnav:ViewNavigator=null;
  public var data:Object;
  public static const dis:EventDispatcher = new EventDispatcher(); 
  
  public function LoginEvent(type:String,bubbles:Boolean = false,canceable:Boolean = false,data:Object = null)
  {       
   super(type, bubbles, cancelable);
   this.data=data;
  }
 }

分发

 

 var loginEvent:LoginEvent =new LoginEvent(LoginEvent.ET,false,false,d);
   //application.dispatchEvent(loginEvent);
   
   LoginEvent.dis.dispatchEvent(loginEvent);

 

 

注册

LoginEvent.dis.addEventListener(LoginEvent.ET,login)

 

 

 

处理

public function login(e:LoginEvent):void
   {
   var d:String=e.data.toString();
    if(d=="0"){
     trace("push q");
     
     busyIndicator.visible = false;
     trace(this.parentApplication);
     //trace(this.parentDocument.toString());
     if(navigator == null){
      trace(LoginEvent.viewnav);
     LoginEvent.viewnav.pushView(MainView);
      //navigator.parentNavigator
      //this.parentApplication
     }else
     {
       navigator.pushView(MainView);
       LoginEvent.viewnav=navigator;
     }
     //model.status = -1;
     trace("push h");
    }
    
    //dispatchEvent(loginEvent);
   }

 

 

【上篇】
【下篇】

抱歉!评论已关闭.