as3 数组错误#1009 空对象引用

as3 array error #1009 null object reference

我正在学习 as3 上的数组,我设法(在本网站用户的帮助下)让我的数组工作,但现在我收到 #1009 错误,当 box_MC 命中 finish_MC 并切换到下一个场景,根据我的理解,它的发生是因为数组仍然是 运行?不是 100% 确定。

Error: TypeError: Error #1009: Cannot access a property or method of a null object reference.at arraystut3_fla::MainTimeline/onEnterThisFrame()

您只是忘记删除附加到您的 stage 对象的 Event.ENTER_FRAME 侦听器,该侦听器仍然每帧触发,并且因为您的 onEnterThisFrame 函数中使用的所有元素(对象)仅在您的第一个场景( Scene 1 )中,您仍然会收到该错误。

为避免这种情况,您必须像这样删除该侦听器:

if(box_MC.hitTestObject(finish_MC)) {

    stage.removeEventListener(Event.ENTER_FRAME, onEnterThisFrame); 

    trace ("ending");
    gotoAndPlay (1, "tester");

} else {
    trace ("not yet");
}

或者您可以在第二个场景的第一帧中删除它 (tester):

stop();
stage.removeEventListener(Event.ENTER_FRAME, onEnterThisFrame);

希望能帮到你。