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;
      
    }
     
     }
     
    }

  • 相关阅读:
    下载网络文件并重命名
    数据库加密解密
    java 向上向下取整
    Mybatis 批量添加,批量更新
    指定路径-读取本地文件夹中的文件-递归
    Python3.0科学计算学习之函数
    Python3.0科学计算学习之绘图(四)
    python中利用matplotlib绘图可视化知识归纳
    Python3.0科学计算学习之绘图(三)
    Python3.0科学计算学习之绘图(二)
  • 原文地址:https://www.cnblogs.com/klh5211314/p/3380572.html
Copyright © 2011-2022 走看看