XML and Flash CS4 - loading images
hello,
i'm trying learn use xml loading images , found tutorial somewhere... far good. however, stuck on something.
i've loaded bunch of thumbs , want load bigger version of image when thumbnail image clicked.
got work poorly. same large image loaded no matter thumb clicked. appreciate advice.
thank you!
============================================================================
var xmlrequest:urlrequest = new urlrequest("rockandroll.xml");
var xmlloader:urlloader = new urlloader(xmlrequest);
var imgdata:xml;
var numberofchildren:int;
var hite:int;
var wid:int;
xmlloader.load(xmlrequest);
xmlloader.addeventlistener(event.complete, xmlloadedf);
var imageloader1:loader = new loader();
var bigloader:loader = new loader();
var rawimage:string;
var rawimage2:string;
var imgnum:int=0;
function xmlloadedf(event:event):void{
imgdata = new xml(event.target.data);
numberofchildren = imgdata.*.length()
var startx:int=190;
var starty:int=60;
var imgnum:int=0;
var ctr:int=0;
var cumux:int=0;
while(imgnum<36){
for(var cols:int=0; cols<7; cols++){
var b:movieclip = new boxx();
addchild(b);
b.x=startx+cols*b.width;
//
cumux+=number(imgdata.pic[imgnum].imgw);
//
b.y=starty;
rawimage=imgdata.pic[imgnum].thumb;
rawimage2=imgdata.pic[imgnum].big;
var imageloader1:loader = new loader();
var bigloader:loader = new loader();
imageloader1.load(new urlrequest(rawimage));
imageloader1.addeventlistener(mouseevent.click, itsclicked);
bigloader.addeventlistener(mouseevent.click, itsgone);
b.addchild(imageloader1);
imageloader1.x=(b.width-imgdata.pic[imgnum].imgw)/2;
imageloader1.y=(b.height-imgdata.pic[imgnum].imgh)/2;
imgnum++;
}
starty+=b.height;
b.x=startx;
}
function itsclicked(event:event):void{
rawimage2=imgdata.pic[imgnum].big;
addchild(bigloader);
bigloader.load(new urlrequest(rawimage2));
bigloader.addeventlistener(mouseevent.click, itsgone);
}
function itsgone(event:event):void{
removechild(bigloader);
}
}
===================================
and here's record in xml file:
<?xml version="1.0" encoding="utf-8"?>
<photos>
<pic>
<thumb>thumbs/1t.jpg</thumb>
<big>images/1.jpg</big>
<imgw>57</imgw>
<imgh>31</imgh>
<bigimgw>922</bigimgw>
<bigimgh>500</bigimgh>
</pic>
... etc.
=====================================
thanks again!
try tracing value of imagenum in itsclicked function...
trace(imgnum):
More discussions in ActionScript 3
adobe
Comments
Post a Comment