У меня есть мувиклип, используемый в качестве кнопки.После случайного количества нажатий кнопка перестает работать.Другими словами, мышь станет рукой при наведении курсора на кнопку, но щелчки не регистрируются для запуска функции.Я даже щелкнул 40 раз, и он будет работать, но потом вдруг, чёрт!, Он перестает работать.Вот функция, которая добавляет btn, слушатель, анимирует его на экран, а также добавляет текст.
function makeButton():void{
addChild(myBtn);
myBtn.mouseChildren=false;
myBtn.buttonMode=true;
myBtn.x=(stage.stageWidth/2)-(myBtn.width/2);
myBtn.y=-300;
myBtn.addEventListener(MouseEvent.MOUSE_DOWN, btnClicked, false, 0, true);
myBtn.btn_text.text="The string goes here";
TweenLite.to(myBtn, 0.5,{x:(stage.stageWidth/2)-(myBtn.width/2),y:(stage.stageHeight/2)-(myBtn.height/2)});
}
А затем вот функция, которая анимирует кнопку за пределами экрана:
function btnClicked(e:MouseEvent):void{
myBtn.removeEventListener(MouseEvent.MOUSE_DOWN, btnClicked);
TweenLite.to(myBtn, 0.5,{x:(stage.stageWidth/2)-(myBtn.width/2),y:-300});
}
Странно то, что я добавил след («добавлен слушатель») в makeButton () В ОЧЕНЬ КОНЕЦ, ПОСЛЕ ДОБАВЛЕНИЯ.И он отслеживает каждый раз, даже когда кнопка перестает работать.Так что я могу только предположить, что нет никаких ошибок при добавлении слушателя.Но тогда почему это не работает?
Я в тупике.Я думал, что это может быть проблемой распространения событий.Другими словами, слушатель был добавлен к цели (myBtn), но каким-то образом он захватывал или пузырился неправильно, но ..... тогда почему он вообще работает?И за столько кликов?
Истина там.Или, может быть, здесь, ваши идеи будут высоко оценены.