• 一个loader加载多个swf


    var _swfLoader:Loader;
    var _swfRequest:URLRequest;
     
    var _swfPathArr:Array = new Array("00.swf", "01.swf", "02.swf");
     
    var _swfClipsArr:Array = new Array();
    var _swfTempClip:MovieClip;
    var _loadedSWFs:int;
     
     
    startLoading(_swfPathArr);
     
    function startLoading(pathArr:Array):void {
        _swfLoader = new Loader();
        _swfRequest = new URLRequest();
       
        loadSWF(pathArr[0]);
    }
     
    function loadSWF(path:String):void {
        setupListeners(_swfLoader.contentLoaderInfo);
       
        _swfRequest.url = path;
        _swfLoader.load(_swfRequest);
    }
     
    function setupListeners(dispatcher:IEventDispatcher):void {
        dispatcher.addEventListener(Event.COMPLETE, onSwfComplete);
        dispatcher.addEventListener(ProgressEvent.PROGRESS, currentSwfProgress);
    }
     
    function currentSwfProgress(event:ProgressEvent):void {
        var _perc:int = (event.bytesLoaded / event.bytesTotal) * 100;
        // swfPreloader.percentTF.text = _perc + "%";
    }
     
     
    function onSwfComplete(event:Event):void {
        event.target.removeEventListener(Event.COMPLETE, onSwfComplete);
        event.target.removeEventListener(ProgressEvent.PROGRESS, currentSwfProgress);
     
        _swfTempClip = event.target.content;
        _swfTempClip.customID = _loadedSWFs;
        _swfClipsArr.push(_swfTempClip);
       
        if(_loadedSWFs <_swfPathArr.length - 1) {
            _loadedSWFs++;
            loadSWF(_swfPathArr[_loadedSWFs]);
        } else {
            _swfLoader.unloadAndStop();
            _swfLoader = null;
            onCompletePreloading();
        }
    }
     
    function onCompletePreloading():void {
        contentContainer.addChild(_swfClipsArr[0]);
       
        news_btn.addEventListener(MouseEvent.CLICK, setContent);
        portfolio_btn.addEventListener(MouseEvent.CLICK, setContent);
        contact_btn.addEventListener(MouseEvent.CLICK, setContent);
    }
     
    function setContent(event:MouseEvent):void {
        var _swfToAdd:MovieClip;
       
        switch(event.target.name) {
            case "news_btn":
            _swfToAdd = _swfClipsArr[0];
            break;
           
            case "portfolio_btn":
            _swfToAdd = _swfClipsArr[1];
            break;
           
            case "contact_btn":
            _swfToAdd = _swfClipsArr[2];
            break;
        }
       
        contentContainer.removeChildAt(contentContainer.numChildren-1);
        contentContainer.addChild(_swfToAdd);
        trace(_swfToAdd.customID);
    }
    http://www.beautifycode.com/the-finer-art-of-loading-2-handling-multiple-swfs
  • 相关阅读:
    提示框第三方库之MBProgressHUD
    三种ViewController跳转的异同
    性能测试学习第一天_性能测试常见术语
    JSONArray与list互转
    web service CXF工作中使用总结
    局部变量、类变量、实例变量有什么区别
    hibernate 的几种查询——工作中使用到的
    tomcat 常见启动问题小记
    文本编辑器KindEditor的使用
    kaptcha Java验证码
  • 原文地址:https://www.cnblogs.com/602147629/p/3909611.html
Copyright © 2020-2023  润新知