2010-10-26 74 views
0

为什么当我在view_start之前调用view_stats_exit时,这个ENTER_FRAME事件停止发射?AS3 ENTER_FRAME事件仍然在帧发生变化时触发

public function view_start (e:MouseEvent):void 
{ 
    gotoAndStop("start"); 
} 
public function view_stats(e:MouseEvent):void 
{ 
    // Event 
    StatsUI.addEventListener(Event.ENTER_FRAME,stats_scroll); 
} 
public function view_stats_exit (e:MouseEvent):void 
{ 
    StatsUI.removeEventListener(Event.ENTER_FRAME,stats_scroll); 
    view_start(null); 
} 

TypeError:错误#1009:无法访问空对象引用的属性或方法。 at Snapshot/stats_scroll()

+0

作品,如果我更改StatsUI显示对象只是阶段。无法将ENTER_FRAME事件侦听器附加到显示对象(影片剪辑)? – woodscreative 2010-10-26 16:32:51

回答

1

您可以将事件侦听器添加到MovieClip,但不应将其作为静态函数来执行,就像在您的示例中那样。以下应该工作...

private var ui:StatsUI = new StatsUI(); 

    public function view_stats(e:MouseEvent):void 
    { 
    // Event 
    ui.addEventListener(Event.ENTER_FRAME,stats_scroll); 
    } 

    public function view_stats_exit (e:MouseEvent):void 
    { 
    ui.removeEventListener(Event.ENTER_FRAME,stats_scroll); 
    view_start(null); 
    } 
+0

谢谢,我会试试看。 – woodscreative 2010-10-26 17:00:24

相关问题