zoukankan      html  css  js  c++  java
  • URLStream加载美术资源

    package 
    {
    	//import com.demonsters.debugger.MonsterDebugger;
    
    	import flash.display.Loader;
    	import flash.display.LoaderInfo;
    	import flash.display.Sprite;
    	import flash.events.Event;
    	import flash.events.ProgressEvent;
    	import flash.net.URLRequest;
    	import flash.net.URLStream;
    	import flash.system.ApplicationDomain;
    	import flash.system.LoaderContext;
    	import flash.system.Security;
    	import flash.utils.ByteArray;
    
    	public class Preloader extends Sprite
    	{
    		private var bytes:ByteArray;
    
    		public function Preloader()
    		{
    			Security.allowDomain("*");
    			Security.allowInsecureDomain("*");
    
    			//MonsterDebugger.initialize(this);
    			//MonsterDebugger.trace(this, "Hello World!");
    
    			//var gameMain:GameMain = new GameMain();
    			//addChild(gameMain);
    
    			load();
    		}
    
    		private function load():void
    		{
    			var stream:URLStream = new URLStream();
    			stream.addEventListener(ProgressEvent.PROGRESS, this.onAssetProgress);
    			stream.addEventListener(Event.COMPLETE, this.onAssetComplete);
    			var req:URLRequest = new URLRequest();
    			req.url = "Main.swf";
    			stream.load(req);
    		}
    		protected function onAssetProgress(e:ProgressEvent):void
    		{
    			trace("e.bytesLoaded:"+e.bytesLoaded + "e.bytesTotal:"+e.bytesTotal);
    		}
    		protected function onAssetComplete(e:Event):void
    		{
    			var stream:URLStream = (e.currentTarget as URLStream);
    			bytes = new ByteArray();
    			stream.readBytes(bytes);
    
    			loadBytesHs();
    		}
    
    		public function loadBytesHs():Loader
    		{
    			var loader:Loader = new Loader();
    			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, this.onModuleComplete);
    			this.addChild(loader);
    			if (bytes != null)
    			{
    				var $loadercontext:LoaderContext = new LoaderContext(false);
    				$loadercontext.applicationDomain = ApplicationDomain.currentDomain;
    
    				/*//flash 10.0兼容
    				if($loadercontext.hasOwnProperty("allowCodeImport"))
    				{
    					$loadercontext["allowCodeImport"]=true;
    				}*/
    				loader.loadBytes(bytes, $loadercontext);
    			}
    			return (loader);
    		}
    
    		protected function onModuleComplete(e:Event):void
    		{
    			var loaderInfo:LoaderInfo = (e.currentTarget as LoaderInfo);
    			if (loaderInfo.hasEventListener(Event.COMPLETE))
    			{
    				loaderInfo.removeEventListener(Event.COMPLETE, this.onModuleComplete);
    			}
    		}
    	}
    }
    

      

  • 相关阅读:
    【UOJ #268】【清华集训2016】数据交互(动态DP)
    【UOJ #267】【清华集训2016】魔法小程序(前缀和)
    【UOJ #266】【清华集训2016】Alice和Bob又在玩游戏(SG函数+01Trie)
    【CSP-S 2019题解】
    【CSP 2019游记】
    【CSP-S 2019模拟题解】
    sql语句: update和sql函数的冲突
    http协议之实践巩固(深度篇一)
    不错的开发工具做下记录
    javascrpt之this指向问题
  • 原文地址:https://www.cnblogs.com/602147629/p/2864576.html
Copyright © 2011-2022 走看看