Я пытаюсь создать динамическую галерею изображений из xml. Из моих руководств, прямо сейчас у меня есть это, так что он будет постоянно добавлять следующую миниатюру ниже другой, и это нормально, но я пытаюсь понять, как сделать так, чтобы, как только она достигнет определенной координаты y, она будет переместите координату x и снова сложите их. Так что вместо одного длинного списка превью, это будет параллельный стек. Почему-то у меня в голове не укладывается, как это могло бы работать. Моя цель состоит в том, чтобы иметь параллельный стек, который я в конечном итоге помещу в клип, который будет замаскирован, чтобы отображать только 2 стека за раз. Затем при нажатии на кнопку будет скользить по ней. Я планировал использовать «movieclip.length», чтобы рассчитать, как далеко его переместить, но я еще не зашел так далеко. Вот что я получил:
var gallery_xml:XML;
var xmlReq:URLRequest = new URLRequest("xml/content.xml");
var xmlLoader:URLLoader = new URLLoader();
var imageLoader:Loader;
function xmlLoaded(event:Event):void
{
gallery_xml = new XML(xmlLoader.data);
info_txt.text = gallery_xml.screenshots.image[0].attribute("thumb");
for(var i:int = 0; i < gallery_xml.screenshots.image.length(); i++)
{
imageLoader = new Loader();
imageLoader.load(new URLRequest(gallery_xml.screenshots.image[i].attribute("thumb")));
imageLoader.x = 0;
imageLoader.y = i * 70 + 25;
imageLoader.name = gallery_xml.screenshots.image[i].attribute("src");
addChild(imageLoader);
imageLoader.addEventListener(MouseEvent.CLICK, showPicture);
}
}
xmlLoader.load(xmlReq);
xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);
function showPicture(event:MouseEvent):void
{
imageLoader = new Loader();
imageLoader.load(new URLRequest(event.target.name));
imageLoader.x = 200;
imageLoader.y = 25;
addChild(imageLoader);
}
Кажется, я не могу понять, что я могу сделать для динамического перемещения вещей без необходимости писать пользовательский if для каждого набора позиций. У меня такое чувство, что я полностью забыл, как делать алгебру.