ActionScript 多图加载 按图顺序索引 加载完第一张再加载第二张

9 篇文章 0 订阅
Tag:ActionScript 加载图片 位置 顺序 多张图

1,写一个自己的EVENT类:DataEvent

 

package util
{
    import flash.events.Event; 

    public class DataEvent extends Event
    {
        public var data:String;
        public var content:Object;
        public static const COMPLETE:String="ObjectLoadOver";
        public function DataEvent(type:String=DataEvent.COMPLETE, bubbles:Boolean=false, cancelable:Boolean=false)
        {
            super(type, bubbles, cancelable);
        }
    }
} 

2,写自己的一个Loader类:ObjectLoader 

package util{
    import flash.display.Loader;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    public class ObjectLoader extends Sprite {
        private var data:String;
        private var ld:Loader;
        public var loaded:Function;
        public function ObjectLoader(url:String,addedData:String,loadExec:Function) {
            ld=new Loader;
            ld.contentLoaderInfo.addEventListener(Event.COMPLETE,onObjectLoaded);
            ld.load(new URLRequest(url));
            loaded=loadExec;
            data=addedData;
            addEventListener(DataEvent.COMPLETE,loaded);
        }
        private function onObjectLoaded(e:Event):void {
            var event:DataEvent=new DataEvent();
            event.data=data;
            event.content=e.target.content;
            trace(e.target.content);
            //event.target.content=e.target.content;
            if (loaded!=null) {
                dispatchEvent(event);
            } else {
                trace("请给ObjectLoader的loaded方法赋值");
            }
        } 

    }
} 

3,调用自己的Loader

public function Abcde()
        {
            cards=new Array(13);
            for(var i:uint=0;i<13;i++)
            {
                var url:String="images/poke/C/"+(i+3)+".jpg";
                var ol:ObjectLoader=new ObjectLoader(url,(i+3).toString(),LoadDone);
            }
        }
        public function LoadDone(e:DataEvent):void
        {
            trace(e.data);
            var bitmap:Bitmap=e.content as Bitmap;
            bitmap.y=top;
            bitmap.x=parseInt(e.data)*20+left;
            cards[parseInt(e.data)-3]=bitmap;
            total++;
            if(total==13)
            {
                for(var i:uint=0;i<13;i++) {
                    addChild(cards[i]);
                }
             }
} 


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值