こんにちは、スタック オーバーフローのユーザーです。現在、as3 と xml を介してデータをランダム化するのに苦労しています。
xml を読み込んでランダムな会場を生成することはできますが、作成したランダム ボタンをクリックすると、同じノードが 2 回表示されます。基本的には、前の会場の繰り返しがないデータをランダムに選択したいだけです。
私のxml:
<gallery>
<venue>
<name>1</name>
<description>1</description>
<picture>images/1.jpg</picture>
<thumb>thumbs/1.jpg</thumb>
<address>1</address>
<website>http://1.co.uk</website>
</venue>
<venue>
<name>2</name>
<description>2</description>
<picture>images/2.jpg</picture>
<thumb>thumbs/2.jpg</thumb>
<address>2</address>
<website>http://2.co.uk</website>
</venue>
<venue>
<name>3</name>
<description>3</description>
<picture>images/3.jpg</picture>
<thumb>thumbs/3.jpg</thumb>
<address>3</address>
<website>http://3.co.uk</website>
</venue>
</gallery>
私の現在のコード:
var xml:XML = <venues>
<venue name="" description="" address="" website="" picture=""/>
<venue name="" description="" address="" website="" picture=""/>
<venue name="" description="" address="" website="" picture=""/>
<venue name="" description="" address="" website="" picture=""/>
</venues>;
var Gallerylist:XMLList = new XMLList(xml.venue);
function RandomGallery(e:Event)
{
var rand:int = Gallerylist.length() * Math.random();
myTextBoxTitle.text = myXML.venue.name[rand]
myTextBoxDes.text = myXML.venue.description[rand]
myTextBoxAddress.text = myXML.venue.address[rand]
myTextBoxWeb.text = myXML.venue.website[rand]
myVenueImage.source = myXML.venue.picture[rand]
}
randomBTN.addEventListener(MouseEvent.MOUSE_DOWN, RandomGallery);