看板 Flash 關於我們 聯絡資訊
這是我的一些function的寫法 不知道會不會對各位理解我的新手級腦袋有所幫助Orz function loader_percent(loader:URLLoader){ if(!loader.bytesTotal){ return -1 }else{ MovieClip(getChildByName("mc_loading")).gotoAndStop(....) return loader.bytesTotal-loader.bytesLoaded } } 這是把loader傳進來 回傳她的進度 0為完成 -1是為了排除檔案沒初始化,0-0=0的情況 function loader_add(url:String,obj:String){ loader_url.push(new String(url)) loader_obj.push(new String(obj)) } 傳入兩個字串 loader載入loader_url之後,由loader_obj去addChild(loader) function loader_remove(){ loader_url.shift() loader_obj.shift() loader_loaded=false//載入開關布林 } 載入完畢之後去載下一個 都載入[0]的物件 接著是主要的function,會一直呼叫 function loader_preload(){ if(loader_url.length){//有東西要載 if(!loader_loaded){//呼叫載入一次 loader.load(new URLRequest(loader_url[0])) loader_loaded=true//暫時關閉 } if(!loader_percent(loader)){//回傳進度 trace(getChildByName(loader_obj[0]))//剛剛測試過,MC類型 getChildByName(loader_obj[0]).addChild(loader)//不給過 loader_remove()//刪除[0],繼續下一個 } } } 大概.... 就是這樣吧(汗 對不起我的寫法真的很詭異... == 這是我以前的寫法 雖然那次是全部var在function外 url= "01.png" btn_face_loader.load(new URLRequest(url)); btn_face_mc.addChild(btn_face_loader); 為什麼這樣在載入完畢之後他就會出現 btn_face_loader也是URLLoader阿.... btn_face_mc也是MovieClip阿..... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.64.175.158 ※ 編輯: AizawaYuichi 來自: 61.64.175.158 (04/13 17:51)
aquarianboy:其實有現成的bulk loader可以用,不用自己造輪胎 04/13 17:57
AizawaYuichi:其實我想自己寫看看....設計它的整個構思對我有幫助 04/13 17:59
AizawaYuichi:而且感覺都是出在類型錯亂的問題,我還是得學.... 04/13 17:59
當 trace(loader)是[object URLLoaer] trace(getChildByName(loader_obj[0]))是[object MovieClip] 的時候 為什麼getChildByName(loader_obj[0]).addChild(loader) 這樣不給過QAQ ※ 編輯: AizawaYuichi 來自: 61.64.175.158 (04/13 18:01)
etrexetrex:因為 trace(Sprite(new MovieClip())); 04/13 18:28
etrexetrex:是 [object MovieClip] 04/13 18:28
etrexetrex:看API getChildByName(name:String):DisplayObject 04/13 18:30
etrexetrex:傳回的型態是DisplayObject,不是MovieClip 04/13 18:31
etrexetrex:你沒有辦法透過轉型改變 trace 的結果 04/13 18:31
etrexetrex:但是程式認的是型別 不是認 trace 04/13 18:32
AizawaYuichi:所以?以前可過,這次不能的原因在? 04/13 18:38
AizawaYuichi:能夠抓出我哪個類型卡住了嗎? 04/13 18:39
etrexetrex:你沒有轉型 04/13 18:41
etrexetrex:DisplayObject 沒有 addChild 方法 04/13 18:41
AizawaYuichi:MovieClip(getChildByName(String)).addChild 04/13 18:43
AizawaYuichi:這我也試過 04/13 18:43
etrexetrex:再試一次阿 04/13 18:47
AizawaYuichi:MovieClip(getChildByName(loader_obj[0])).addChild 04/13 18:54
AizawaYuichi:(loader) 不給過阿..... 04/13 18:54
AizawaYuichi:他說問題出在loader 04/13 18:55
AizawaYuichi:好像是URLLoader跟DisplayObject的差別問題 04/13 18:55
AizawaYuichi:問題是我loader有標準var在外面過,也使用load過 04/13 18:56
AizawaYuichi:== 04/13 23:55
AizawaYuichi:以解決 04/13 23:56
AizawaYuichi:Loader跟URLLoader傻傻分不清... 04/13 23:56