zoukankan      html  css  js  c++  java
  • as3+XML读取文件夹图片并显示易错的地方(转自新浪微博)

    这个文档类有两个容易出错的地方,其一是循环加载图片时在for里面要使用 . 

    _LoadPic=new Loader();//每次加载只能加载一个图片,否则只能显示最后一个图片,每次都清空数据

    e.target代替_LoadPic,因为每次加载的内容不一样,所以得用e.target

    XML文件内容:(自己找几个图片放在img文件夹并命名成以下)

    <?xml version="1.0" encoding="utf-8"?>
    <info>

           <titles id="img/01.jpg" />

           <titles id="img/02.jpg" />

           <titles id="img/03.jpg" />

           <titles id="img/04.jpg" />

           <titles id="img/05.jpg" />

    </info>

    PicLoad.as代码:

    package 

     {
     
     import flash.display.MovieClip;
     import flash.net.URLRequest;
     import flash.events.Event;
     import flash.net.URLLoader;
     import flash.display.Loader;
     import flash.display.Sprite;
     import flash.display.LoaderInfo;


     public class PicLoad extends MovieClip

    {
     //定义变量
     private static var _Xml:XML=new XML();
     private static var _XmlLoad:URLLoader=new URLLoader();
     private static var _XmlUrl:String="list.xml";
     private static var _XmlReq:URLRequest=new URLRequest(_XmlUrl);
     private static var _LoadPic:Loader=new Loader();
     private static var _PicXml:URLRequest=new URLRequest();
     private static var _PicUrl:Array=new Array();
     private static var _PicNum:uint;
     private static var _PicSprite:Sprite=new Sprite();//图片容器
     
      
     public function PicLoad()

    {
      
      _XmlLoad.load(_XmlReq);
      
      _XmlLoad.addEventListener(Event.COMPLETE,readXml);
      
       }
       
      
     public function readXml(e:Event):void

    {
      
      //这里必须要有data,否则只是把容器赋值给_Xml
      _Xml=XML(_XmlLoad.data);
      
      _PicNum=_Xml.titles.length();
      
      //把所有图片地址装入数组
      for(var i:uint=0;i<_PicNum;i++)

    {
       
      _PicUrl.push(_Xml.titles[i].@id);
      
       }
      loadPic(0);
      
      trace(_PicUrl);
      
          }
       
     public function loadPic(num:uint):void

    {
      
      for(var i:uint=0;i<_PicNum;i++)

    {
       
      _LoadPic=new Loader();
      
      _LoadPic.load(new URLRequest(_PicUrl[i]));
      
      _LoadPic.x=i*140+30;
      
      _LoadPic.contentLoaderInfo.addEventListener(Event.COMPLETE,changePic);
      
      _PicSprite.addChild(_LoadPic);
      
      addChild(_LoadPic);
      
       }
      
      //addChild(_PicSprite);

       }
      
     public function changePic(e:Event):void

    {

            e.target.content.width=120;

            e.target.content.height=120;
      
    }
     
     }
     
    }

  • 相关阅读:
    ASP.NET HttpRuntime.Cache缓存类使用总结
    ASP.NET MVC自定义AuthorizeAttribute篇知识点讲解—登录限制
    Echarts图表控件使用总结2(Line,Bar)—问题篇
    数据库查询实例(包含所有where条件例子)
    php file_get_contents读取大容量文件方法
    如何给mysql用户分配权限
    dedecms {dede:php}标签用法介绍
    js获取字符串最后一个字符代码
    CSS3选择器之学习笔记
    SQL中实现SPLIT函数几种方法
  • 原文地址:https://www.cnblogs.com/klh5211314/p/3380572.html
Copyright © 2011-2022 走看看