2013-10-08 84 views
0

我是新來的動作3,我有序列幀和兩個按鈕來控制播放順序,它首先正常工作,但有一個序列時播放問題第二次。我使用gotoAndPlay函數進行導航。誰能幫我?動作3:第二次調用函數不會工作

+4

郵編需要幫助。 – zenbeni

+0

我在我的一些框架上有一些代碼,例如: stop(); buttonHigh.addEventListener(MouseEvent.CLICK,fl_ClickToGoToAndPlayFromFrame_11); 函數fl_ClickToGoToAndPlayFromFrame_11(event:MouseEvent):void { \t gotoAndPlay(48); \t} buttonLow.addEventListener(MouseEvent.CLICK,fl_ClickToGoToAndPlayFromFrame_12); 函數fl_ClickToGoToAndPlayFromFrame_12(event:MouseEvent):void { \t gotoAndPlay(96); } 和其他一些完全類似的代碼,但具有不同的導航幀編號。 –

+0

你的代碼看起來不錯,但錯誤還取決於你在第48幀和第96幀上有什麼,時間軸編碼非常煩人。發佈更多關於如何設置按鈕的信息。點擊您帖子中的修改,發佈更多關於您正在做什麼的代碼和詳細信息。 – tailedmouse

回答

0

從你的描述我有什麼可能會發生的預感......

首先我要問你,如果按鈕都出現在沿時間軸中的所有幀?如果它們不是(也就是說,有時時間線顯示一個框架,在返回到它們之前按鈕不存在),您應該意識到,當它們再次返回到視圖中時,它們與以前的按鈕不一樣,是。這意味着您第一次附加的事件監聽器不會響應這些按鈕上的點擊。

發生這種情況是因爲當它們再次進入視圖時,Flash總是完全重新創建時間軸對象。當符號相同時,Flash有時可以應對「跳過」「間隙」,但這是非常不可靠的,應該避免出於這個原因。

您可以通過始終將ui放在舞臺上,並在需要時顯示和隱藏按鈕來避免此問題。更好的是,在代碼中創建一個ui實例,並在需要時將其添加到舞臺中。這樣你就知道只有一個實例,並且你在控制它。

相關問題