xmlの機能を持つメソッドを呼び出そうとしていますが、nullが返され続けます。私がしようとしていることは、私はxmlファイルからコンテンツを取得する4つの動的テキストフィールドを持つページを持っています。私は動的なフィールドに表示する内容を出力するメソッドを作成したいと思います。たぶん私のアプローチはこちらから離れているかもしれませんが、私の上司はxml.asファイルに含まれるすべてのxml関連タスクを必要としています。カスタムXMLクラスでメソッドを呼び出すとnullが返されます
Main.as
package classes
{
import flash.display.*;
import flash.events.*;
import classes.Xml; /* my custom class */
public class Main extends MovieClip
{
public function Main():void
{
var xml:Xml = new Xml("menu.xml");
trace(xml.getCourseTitle());
}
}
}
Xml.as
package classes
{
import flash.display.*;
import flash.net.*;
import flash.events.*;
public class Xml extends MovieClip
{
private var xml:XML;
private var loader:URLLoader = new URLLoader();
public function Xml(p:String):void
{
loader.load(new URLRequest(p));
loader.addEventListener(Event.COMPLETE,processXML);
}
public function processXML():void
{
xml = new XML(loader.data)
trace(xml); /* this will trace all xml data in xml file */
}
public function getCourseTitle():String
{
return [email protected]; /* this is supossed to return Test Course */
}
}
}
menu.xml
<?xml version="1.0"?>
<course title="Test Course">
<folder name="Question 1" link="1_1.swf"/>
<folder name="Question 2" link="1_2.swf"/>
<folder name="Question 3" link="1_3.swf"/>
<folder name="Question 4" link="1_4.swf"/>
<folder name="Question 5" link="1_5.swf"/>
<folder name="Question 6" link="1_6.swf"/>
<folder name="Question 7" link="1_7.swf"/>
<folder name="Question 8" link="1_8.swf"/>
<folder name="Question 9" link="1_9.swf"/>
<folder name="Question 10" link="1_10.swf"/>
</course>
あなたがあなたにアクセスしようとしているのでxmlオブジェクトをロードする前に、あなたのXMLファイルを読み込んでいますが、実際の質問は、なぜ 'Xml'クラスが' MovieClip'のサブクラスですか? – Taurayi
良い質問と質問を知らない。私はいくつかのXMLの例を見てきました、そして、それはほとんど 'EventDispatcher'を使用しているようです。これは私がこれに使用すべきものなのでしょうか、それとも良い選択肢がありますか?おかげで – Mike