当前位置:软件学习 > Flash >>

最流行的新浪图片轮换效果

0.1 准备好外部的文件:在你的硬盘里新建一个文件夹,里头放入一个图像列表文件list.xml,使用如下格式
<?xml version="1.0" encoding="GB2312"?><images><i s="images/v82008.jpg" a="images_abbr/v82008.jpg">未被直播的超女复活赛</i><i s="images/060820110116v82009.jpg" a="images_abbr/060820110116v82009.jpg">吃“最便宜的盒饭”</i><i s="images/060820110131v82010.jpg" a="images_abbr/060820110131v82010.jpg">本报记者亲历长沙“超级女声”台前幕后</i></images>
根据这里的路径放置图像文件。
PS:这样的写法其实名称不好看明白,但当初笔者考虑传输时间,就在变量这里对xml文件做了压缩。
0.2 新建一个Flash文档,大小定为300*225(参考),保存为picsExchange.fla,位置跟list.xml在同一目录。
1.1 开始进入读取分析XML的工作,并把所有信息存放于数组里头,这里,笔者创建了三个数组:descriptions,imgabbrs,imgs。
1.2 在第一帧里加上代码:
stop(); //因为是时间轴版,所以需要先停止播放,等xml的读取和分析完成以后才可以进入时间轴的第二段
System.useCodepage=true //防止中文乱码
var imgList:XML=new XML() //创建读取xml的对象
imgList.load("list.xml") //读取list.xml文件
var descriptions:Array
var imgabbrs:Array
var imgs:Array  //定义三个用于存放图像信息的数组
var imgsNum:Number=0; //放置图片数目的变量
imgList.onLoad=function(success){
        imgList.ignoreWhite=true
        if(success){
                descriptions=new Array()
                imgabbrs=new Array()
                imgs=new Array() //该步用于初始化数组,在重新读取的时候,把数组里的内容清空。
                imgsNum=imgList.childNodes[0].childNodes.length
                for(var i in imgList.childNodes[0].childNodes){
                        var imgNode:XMLNode=imgList.childNodes[0].childNodes
                        descriptions=imgNode.childNodes[0].nodeValue //这是图片的文字描述
                        trace("description:"+descriptions)
                        imgabbrs=imgNode.attributes.a //这是缩略图的路径
                        trace("imgabbr:"+imgabbrs)
                        imgs=imgNode.attributes.s //这是源图的路径
                        trace("img:"+imgs)
                }
                play();  //分析完毕,可以让时间轴播放
        }else{
                trace("loading error!")
        }
}

补充:flash教程,As3.0 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,