0

我几乎没有关于 AS3/Flash CS5 的知识。

我需要从带有 url 列表的 XML 文件中加载随机图像。

每次我加载电影时,它都应该加载一个随机图像。

知道怎么做吗?

4

1 回答 1

1

我假设这是您的 xml 文件的样子:

<images>
    <image url="http://url_to_image/1.png" width="100" height="100" />
    <image url="http://url_to_image/2.png" width="100" height="100" />
    <image url="http://url_to_image/3.png" width="100" height="100" />
    <image url="http://url_to_image/4.png" width="100" height="100" />
    <image url="http://url_to_image/5.png" width="100" height="100" />
</images>

以下是您要从中随机获得一个:

private function randomImage(imagesXML:XML):Object {
    var imageList:XMLList=imagesXML.image;
    var imageCollection:XMLListCollection=new XMLListCollection(imageList);
    var random:int=Math.floor(Math.random() * imageCollection.length);
    var r:Object={};
    r.url=xmlCollection[random].@url;
    r.width=Number(xmlCollection[random].@width);
    r.height=Number(xmlCollection[random].@height);
    return r;
}

这就是你如何称呼它:

private var x:XML=<images>
        <image url="http://url_to_image/1.png" width="100" height="100" />
        <image url="http://url_to_image/2.png" width="100" height="100" />
        <image url="http://url_to_image/3.png" width="100" height="100" />
        <image url="http://url_to_image/4.png" width="100" height="100" />
        <image url="http://url_to_image/5.png" width="100" height="100" />
    </images>;

var img:Object=randomImage(x);

现在你有img.url, img.width,img.height

于 2012-07-22T09:22:35.500 回答