Flash 10从使用swfmill编译的外部swf附加png文件

时间:2011-06-27 13:23:37

标签: resources flash assets swfmill

我希望在运行时加载使用swfmill编译的外部swf。换句话说,异步加载它(不与文件一起编译)。这个swf包含2个资产:file1.png和file2.png。

除了这个问题外,它主要工作:如何在文件中附加资源?通常我会使用attach()...

var _urlLoader = new URLLoader();
var _urlRequest = new URLRequest("libgfx.swf");
_urlLoader.load(_urlRequest);
_urlLoader.addEventListener(Event.COMPLETE, onComplete);

public function onComplete(e:Event) {
    trace("Received shared libgfx.swf. Length: " + _urlLoader.data.length);  // displaying the size correctly

    var displayObjectLoader:Loader = new Loader();
    displayObjectLoader.load(_urlRequest);
    var displayObject:DisplayObject = addChild(displayObjectLoader);

    // How would you attach file1.png or file2.png?
    // …?
}

任何帮助表示赞赏:)

1 个答案:

答案 0 :(得分:0)

  • 将资源转换为MovieClip。
  • 为他们添加链接。
  • 使用以下代码加载它:

    var context:LoaderContext       = new LoaderContext( );
        context.applicationDomain   = ApplicationDomain.currentDomain;
    
    var loader : Loader = new Loader( );
        loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete );
        loader.load( new URLRequest( "assets.swf" ), context );
    
        function complete ( e:Event ) : void
        {
            var Asset : Class = e.target.applicationDomain.getDefinition("the linkage of the asset") as Class;
            var asset : MovieClip = new Asset( );
            addChild( asset );
        }
    

希望这有帮助。

干杯

Tamas Gronas

相关问题