我在as3上学习数组,并且我(在本网站上的用户的帮助下)管理我的数组工作,但现在我收到#1009错误,当box_MC
点击{{1并且从我理解它发生的事情改变到下一个场景,因为数组仍在运行?不是100%肯定。
错误:TypeError:错误#1009:无法访问属性或方法 null对象reference.at arraystut3_fla :: MainTimeline / onEnterThisFrame()
答案 0 :(得分:0)
您只是忘记删除附加到Event.ENTER_FRAME
对象的stage
侦听器,该对象仍然每帧都被触发,并且因为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);
希望可以提供帮助。