[問題] removeEventListener使用時機 怎麼用?
我的狀況是
a.swf 裡會有一個loader把 b.swf 載入
b.swf 裡有一個 c物件
在c物件裡 addEventListener()
a.swf unload b.swf
第二次要再load b.swf
會有問題
因為沒有removeEventListener()
但是我現在不知道要將removeEventListener()加在何處?
b.swf unload之前 我要在那裡release 這些enent呢?
有什麼寫法可以參考嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.139.15.72
推
12/17 23:11, , 1F
12/17 23:11, 1F
event.COMPLETE的時候removeEnentListener
會變成b.swf沒有反應
對了 我用的event事件是 enterframe
※ 編輯: ulong 來自: 220.139.15.72 (12/17 23:52)
推
12/18 00:03, , 2F
12/18 00:03, 2F
→
12/18 00:03, , 3F
12/18 00:03, 3F
我的寫法是
this.addEventListener(Event.ENTER_FRAME, moveGallery);
moveGallery 是移動gallery object 的一個function
this在這指的是一開始上述的c物件
c物件要跟滑鼠動互所以只有b.swf被unload時 才能remove Event
但我不知道寫法形式上要如何寫
※ 編輯: ulong 來自: 220.139.15.72 (12/18 00:12)
推
12/18 00:17, , 4F
12/18 00:17, 4F
→
12/18 00:17, , 5F
12/18 00:17, 5F
我在b.swf被移除的地方加
但是flash的compiler無法認得 moveGallery
因為程式碼寫在不同的.fla檔案中
請問這有辦法克服嗎?
感謝你的熱心回答
※ 編輯: ulong 來自: 220.139.15.72 (12/18 00:55)
→
12/18 01:12, , 6F
12/18 01:12, 6F
我不知道如何集中管理也
flash可以像c++一樣使用解構子嗎?
unload的時候自己解構掉一些resource
※ 編輯: ulong 來自: 220.139.15.72 (12/18 01:19)
推
12/18 01:50, , 7F
12/18 01:50, 7F
→
12/18 01:50, , 8F
12/18 01:50, 8F
→
12/18 01:50, , 9F
12/18 01:50, 9F
推
12/18 02:04, , 10F
12/18 02:04, 10F
cjcat的意思是自己寫一個 destroy的interface 可以在a.swf裡面呼叫是嗎?
scars多謝 你這個提議我會試一下 我不知道有removeFromStage這種東西
因為我剛學flash
有些東西不知道可以如何用
問的時候也比較無法切中問題點
再次謝謝哦
另外請問你們學AS3.0有推的書嗎?
以前學c++有BIBLE 大家比較推的幾本
AS3.0現在有這種經典的書嗎?
※ 編輯: ulong 來自: 220.139.15.72 (12/18 03:01)
→
12/18 09:31, , 11F
12/18 09:31, 11F
問題解決了 scars 建議的removeFromStage是一個可行的方法
當remove child時,會收到這個event
謝謝大家
※ 編輯: ulong 來自: 59.124.68.163 (12/21 20:29)