2017-03-28 4 views
1

私は非常に具体的な作業があり、動作させることができません。 アニメートファイルに、helpという名前のグラフィックシンボルがあり、そこにテキストを含む動的テキスト領域(help_txtという名前)が含まれています。私は外部のXMLファイルでそれを変更したい。あなたは、URLローダにloadメソッドを呼び出した後Event.COMPLETEのイベントリスナーを追加している外部のxmlファイルで動的テキストを変更する

var myXml:XML = new XML(); 
myXml.ignoreWhite = true; 
var myLoader:URLLoader = new URLLoader(); 
myLoader.load(new URLRequest("test_eng.xml")); 
myLoader.addEventListener(Event.COMPLETE, processXML) 
function processXML(e:Event):void { 
    myXml = new XML(e.target.data); 
    parsFramText(); 
} 
function parsFramText(){ 
    help_txt.text = myXml.first.text; 
}  

答えて

0

:私は、次のように外部のXMLファイルをアップロード

<?xml version="1.0" encoding="utf-8"?> 
<frame> 
    <first>Begin your adventure here.</first> 
    <second>We continue here</second> 
</frame>  

: 私のXMLファイルには、次のようになりますクラス。最初にイベントリスナーを追加してからloadメソッドを呼び出す必要があります。

さらに、myXml.firstにアクセスするだけで、必要なテキストが返されます。 XMLがロードされると、あなたのイベントリスナーを削除する必要があり、また

var myXml:XML = new XML(); 
myXml.ignoreWhite = true; 
var myLoader:URLLoader = new URLLoader(); 
myLoader.addEventListener(Event.COMPLETE, processXML); 
myLoader.load(new URLRequest("test_eng.xml")); 

function processXML(e:Event):void { 
    myXml = new XML(e.target.data); 
    myLoader.removeEventListener(Event.COMPLETE, processXML); 
    parsFramText(); 
} 

function parsFramText():void{ 
    help_txt.text = myXml.first; 
}  

は、以下のコードを更新しました。障害シナリオを処理するために、いくつかのエラー処理イベントリスナも調べてください。

これが役に立ちます。ありがとう。

+0

ありがとうございました。私はあなたが示唆したものを行い、エラー処理イベントリスナを追加し、それは完全に機能しました。 myLoader.addEventListener(IOErrorEvent.IO_ERROR、onError); 関数onError(e:IOErrorEvent):void { //何もしない } – KateMD

関連する問題