Я разработал фотогалерею на основе XML, используя ActionScript 3.0.
Сначала при запуске SWF-файла загружаются все миниатюры. Затем у меня появляются эскизы ниже, когда я нажимаю на них, загружается большое изображение.
Я хотел, чтобы миниатюры были заменены числами, которые динамически формируются из файла XML. т.е. я просто хочу цифры, при нажатии на них загружаются соответствующие изображения
Пожалуйста, дайте решение этой проблемы или предложите хороший учебник. Большое спасибо:)
вот код, над которым я работал, и я застрял, заменив
var titleArray:Array = new Array();
var descriptionArray:Array = new Array();
var largeImageArray:Array = new Array();
var thumbnailArray:Array = new Array();
//XML
var imageNum:Number=0;
var totalImages:Number;
//Load in XML
var XMLURLLoader:URLLoader = new URLLoader();
XMLURLLoader.load(new URLRequest("portfolio.xml"));
XMLURLLoader.addEventListener(Event.COMPLETE, processXML);
function processXML(event:Event):void {
var theXMLData:XML=new XML(XMLURLLoader.data);
totalImages=theXMLData.title.length();
for (var i:Number=0; i< theXMLData.title.length(); i++) {
titleArray.push(theXMLData.title[i]);
descriptionArray.push(theXMLData.description[i]);
largeImageArray.push(theXMLData.largeImage[i]);
thumbnailArray.push(theXMLData.thumbImage[i]);
}
loadThumbnail();
}
myScrollPane.source=allThumbnails;
//Load the thumbnails
function loadThumbnail():void {
trace(imageNum);
var thumbLoader1:Loader = new Loader();
thumbLoader1.load(new URLRequest(thumbnailArray[imageNum]));
thumbLoader1.x=100*imageNum; //Distance between images
//stores the appropriate info for the thumbnail
var thisLargeImage:String=largeImageArray[imageNum];
var thisTitle:String = titleArray[imageNum];
var thisDescription:String = descriptionArray[imageNum];
thumbLoader1.contentLoaderInfo.addEventListener(Event.COMPLETE, thumbLoaded1);
function thumbLoaded1(event:Event):void {
//add the thumbnail to the allThumbnails instance
allThumbnails.addChild(thumbLoader1);
myScrollPane.update();
allThumbnails.buttonMode=true;
thumbLoader1.addEventListener(MouseEvent.CLICK,loadMainImage1);
function loadMainImage1(event:MouseEvent):void {
largeUILoader.source=thisLargeImage;
selectedTitle.text=thisTitle;
selectedDesc.htmlText=thisDescription;
}
}
imageNum++;
if (imageNum<totalImages) {
loadThumbnail();
}
}