異なる値が選択されたときに異なる外部テキストファイルをロードします

StackOverflow https://stackoverflow.com/questions/4739082

  •  12-10-2019
  •  | 
  •  

質問

さまざまな値が変更されたときに、ActionScriptを使用して異なるファイルをロードしようとするのに苦労しています。私は現在、ティレリストを使用していて、彼らは異なる値を持っているので、コードは次のようなものです:(タイトルはちょうどそこにあり、関係はありません)

 if (startTileList.selectedItem.value == 1)
 {
  //textFile1 load here
  txtTitle.text = "History";
 }
 else if (startTileList.selectedItem.value == 2)
 {
  //textFile2 load here
  txtTitle.text = "Features";
 }
 else if (startTileList.selectedItem.value == 3)
 {
  //textFile3 load here
  txtTitle.text = "Gallery";
 }

したがって、異なる値が選択されている場合、さまざまなテキストファイルをロードしたいのですが、動作させることはできません。誰かが私に何か解決策を与えることができますか?とても有難い。前もって感謝します。

役に立ちましたか?

解決

以下は、外部テキストファイルをロードするための簡単な例です。

var textField:TextField = new TextField();

//URLLoader used for loading an external file           
var urlLoader : URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.TEXT;
//add to URLLoader a complete event listener (when the file is loaded)
urlLoader.addEventListener(Event.COMPLETE, loadingComplete);


//your application logic
var textURL : String;
if (true) {
    textURL = "http://www.foo.com/text1.txt";
}else{
    textURL = "http://www.foo.com/text2.txt";
}

//Tell to URLLoader to load the file
urlLoader.load(new URLRequest(textURL));

function loadingComplete(e:Event):void{
    //remove the listener
    urlLoader.removeEventListener(Event.COMPLETE, loadingComplete);
    //update the text field with the loaded data
    textField.text = urlLoader.data;                
}

この例では、urlloaderオブジェクトを使用します。これはNative ActionScript3オブジェクトであり、外部Ressourcesをダウンロードできます。 AS3で外部Ressourceをロードすることは非同期プロセスです。そのため、完全なイベントを聴かなければなりません。ロードされると、urlloaderオブジェクトの「データ」という名前のプロパティ内にデータが見つかります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top