Suche…


Bemerkungen

Es gibt Fälle, in denen Ihre Anwendung den Inhalt von Assets, die von einer externen Ressource geladen werden (z. B. Transformationsabbilder), nicht bearbeiten kann. Ich kann mich nicht sicher erinnern, was sie sind, aber ich bin ziemlich sicher, dass es mit dem Laden von Inhalten über Domäneninhalte zusammenhängt.

Laden externer Bilder / SWFs mit dem Loader

  1. Erstellen Sie ein Loader-Objekt:

    var loader:Loader = new Loader();   //import 
    
  2. Fügen Sie dem Loader Listener hinzu. Standardfehler sind vollständige und io / Sicherheitsfehler

    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete); //when the loader is done loading, call this function
    loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadIOError); //if the file isn't found
    loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, loadSecurityError); //if the file isn't allowed to be loaded
    
  3. Laden Sie die gewünschte Datei:

     loader.load(new URLRequest("image.png"));
    
  4. Erstellen Sie Ihre Event-Handler:

     function loadComplete(e:Event):void {
         //load complete
         //the loader is actually a display object itself, so you can just add it to the display list
         addChild(loader) 
         //or addChild(loader.content) to add the root content of what was loaded;
     }
         
     function loadIOError(e:IOErrorEvent):void {
         //the file failed to load, 
     }
        
     function loadSecurityError(e:SecurityError):void {
         //the file wasn't allowed to load
     }
    

Das Laden mit der Loader- Klasse erfolgt asynchron. Dies bedeutet, dass nach dem Aufruf von loader.load die Anwendung weiter ausgeführt wird, während die Datei loader.load wird. Ihr Loader-Inhalt ist erst verfügbar, wenn der Loader das Event.COMPLETE Ereignis Event.COMPLETE .


Importe benötigt:

import flash.display.Loader;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.SecurityErrorEvent;
import flash.net.URLRequest;

Laden einer Textdatei mit FileStream (nur AIR Runtime)

Ein einfaches Beispiel zum synchronen Lesen einer UTF-Textdatei.

import flash.filesystem.File;
import flash.filesystem.FileMode;
import flash.filesystem.FileStream;

//First, get a reference to the file you want to load
var myFile:File = File.documentsDirectory.resolvePath("lifestory.txt");

//Create a FileStream object
fileStream = new FileStream(); 

//open the file
fileStream.open(myFile, FileMode.READ);

//read the data and assign it to a local variable
var fileText:String = fileStream.readUTF();

//close the current filestream
fileStream.close();


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow