Pregunta

Estoy creando archivos SWF en AS3 biblioteca de esta manera, funciona como un encanto (excepto por el compilador mxmlc lenta):

package {
 import flash.display.Sprite; 
 public class Library extends Sprite {
   [Embed(source="assets/test.png")]
      public var TestBitmap:Class; 
 }
}

Me gustaría crear el mismo tipo de libary usando swfmill. He intentado el siguiente código XML sencilla swmfill:

<movie version="10">

           

El examen de las bibliotecas en el explorador de FlashDeveloper revela que las exportaciones de la biblioteca AS3 ambas clases y símbolos, pero las exportaciones de la biblioteca swfmill sólo símbolos. Mi aplicación host está accediendo a los elementos de bibliotecas AS3 de esta manera:

private var loader:Loader = new Loader();

private function onCreationComplete():void {
    this.loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
}

private function onComplete(e:Event):void {
    var resourceClass:Class = loader.contentLoaderInfo.applicationDomain.getDefinition("Library") as Class;
    var resources:Object=new resourceClass();
    var testBitmapClass:Class = resources['TestBitmap'] as Class;   
    var testBitmap:Bitmap = new testPngClass();
    this.addChild(testBitmap);
}

Pero sin clases swfmill exportados, obviamente hay nada que instatiate ...

Se espera que swfmill exportar clases de esta manera? Si no es así, ¿hay alguna manera de acceder a los símbolos sin crear instancias de ellos como clases?

Jonas

¿Fue útil?

Solución

En resumen, no. He estado buscando en esto también. Desde que trabajo con el IDE de Flash, Haxe, y Flex voy a esbozar los diferentes métodos para acceder a los contenidos mediante la incorporación en un swf.

No parece que haya una manera de crear una instancia de un símbolo directamente. Si sus activos fueron exportados por el IDE de Flash, normalmente deberá ajustar las propiedades de exportación para ActionScript para llegar al símbolo. En Haxe que le especifica una clase para que coincida en el xml swfmill. Con la flexión que le define una clase y utiliza la etiqueta de metadatos Insertar para acceder al símbolo incrustando el swf. http://livedocs.adobe.com/flex/ 3 / html / help.html? content = embed_4.html

Esta secuencia de comandos que podría ser útil para usted para generar las clases de exportación. http://wiki.disemia.com/HaXe_SWFMILL_Resource_Converter

Si estás usando AS3, es probable que tenga que utilizar mxmlc de todos modos si estás compilando su proyecto desde la línea de comandos. Puesto que la velocidad es el problema para usted, usted debe considerar el uso de FCSH.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top