flash 远程加载资源文件及引用

大部分flash网游,都是将资源文件分散在不同的swf或swc中,在需要的时候再去加载使用。

这样作的好处在于有效利用用户机器资源,如果全部加载,1.过于耗时,2.内存恐怕吃不消。

 

把代码共享出来,希望大家不用走弯路。

仅仅是一个测试的东西。

 

主要是ResLoader类

通过这个类来实现资源加载,以及生成对象。

示例代码:

private var reslib:ResLoader;

reslib= new ResLoader();
reslib.callbackFn = reloadResSuccess;
 //reslib.progressFn=progressHandler;
 reslib.loadRes("UIResource.swf");

 

private function reloadResSuccess(e:Event):void
  {
for (var i:uint=0; i<10000; i++)
   {
    var o:DisplayObject = reslib.getRes("Ball");
    if (o == null)
    {
     continue;
    }
    var s:Number = Math.random();
    o.scaleX=s;
    o.scaleY=s;
    
    o.x = Math.random() * stage.stageWidth;
    o.y = Math.random() * stage.stage.height;
    addChild(o);
   }   

 

 

  }

 

经测试,虽然是用反射生成实例,不过挺快,创建Ball MC 10000次也才1秒多

 

提醒:资源文件编辑完一定要发布,而不是ctrl+enter.

         只有发布以后.swf中才会生成相应的类引用。

         因为没有发布,导致在查询是否包含相应类型的时候,总是提示找不到类的错误。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值