[問題] 請教如何使用OO讀取

看板Flash作者 (~*)時間15年前 (2011/02/28 00:56), 編輯推噓0(0010)
留言10則, 2人參與, 最新討論串1/3 (看更多)
請教各位先進 在自修物件導向的寫法 就是要如何在main.as去trace另個load進來的XML資料 這樣寫法會output成 function Function() {} 無法將loadXML的data內容trace出來 請教先進該怎麼改才為正確 謝謝 loadXML.as為 package { import flash.display.Sprite; import flash.events.Event; import flash.net.URLLoader; import flash.net.URLRequest; public class loadXML extends Sprite { private var _urlLoader:URLLoader; private var _cccXML:XML; public function loadXML() { initXML(); } public function initXML():void { _urlLoader = new URLLoader(); _urlLoader.load(new URLRequest("ccc.xml")); _urlLoader.addEventListener(Event.COMPLETE, loaderCompleteHandler); } private function loaderCompleteHandler(e:Event):String { _cccXML = new XML(e.target.data); return _cccXML; } } } main.as : package { import flash.display.Sprite; public class Main extends Sprite { public function Main() { var _loadXML:loadXML = new loadXML(); trace(_loadXML.initXML); } } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.63.100.169

02/28 14:27, , 1F
試試 trace(_loadXML.initXML());
02/28 14:27, 1F

02/28 14:28, , 2F
抱歉,錯了,你的initXML是void,是不會有回傳值的
02/28 14:28, 2F

02/28 14:29, , 3F
你的event handler反而回傳了string?
02/28 14:29, 3F

02/28 14:29, , 4F
建議你翻一下F1手冊上關於event handler的寫法 :)
02/28 14:29, 4F

02/28 16:16, , 5F
首先先感謝版大~請教一下 如果把initXML回傳改String
02/28 16:16, 5F

02/28 16:16, , 6F
但在initXML沒有return return是在initXML執行完跑
02/28 16:16, 6F

02/28 16:17, , 7F
loadercompletehandler事件裡 要如何在main.as中能夠
02/28 16:17, 7F

02/28 16:18, , 8F
讓他順利先執行完initXML丟給ldrcomplehandler的函式傳
02/28 16:18, 8F

02/28 16:19, , 9F
回去的值 因為在main.as沒有要丟值給loadXML 只需接
02/28 16:19, 9F

02/28 16:19, , 10F
收他run完的成果顯示這樣 不知懂意思嗎 感謝你
02/28 16:19, 10F
文章代碼(AID): #1DQe8XFg (Flash)
文章代碼(AID): #1DQe8XFg (Flash)