Einzelnen Beitrag anzeigen
Alt 06-01-2010, 11:41   #1 (permalink)
Matthijs1982
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 5
Link auf externe Bilder über XML

Hallo,

Ich bin ein Neuling in Sachen AS3, und brauche eure Hilfe. Ich habe eine XML Datei erstellt woraus ich meine Bilder reinlade. Das klappt alles wunderbar.
Nun möchte ich einen Link auf den Bildern machen, aber das funktioniert nicht. Ich kriege bei dem trace "Undefined" zurück. Wie kriege ich die Nummer von dem angeklickten Bild zurück?

Es handelt sich um den Teil mit dem Comment "LINK WIRD AUF DEN LOGOS PLATZIERT".

Danke.

Der Code:
Code:
import flash.display.*;
import flash.net.URLRequest;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import fl.transitions.Tween;
import fl.transitions.easing.Regular;
import fl.transitions.TweenEvent;
import flash.events.Event;
import flash.events.ProgressEvent;

// FULLSCREEN FLASH

function resizeHandler(e:Event):void
{
  logo_bbdo.x = (logo_bbdo.stage.stageWidth) - (logo_bbdo.width);
  logo_bbdo.y = (logo_bbdo.stage.stageHeight / 2) - (logo_bbdo.height / 2);
  spalte_logos.height = stage.stageHeight;
}

stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, resizeHandler);

stage.dispatchEvent(new Event(Event.RESIZE));

// MENU LOGOS LEFT

   button.addEventListener(MouseEvent.CLICK,
   function(evt:MouseEvent){
      if (spalte_logos.x > -145){
         var spalteLinks:Tween = new Tween(spalte_logos, "x", Regular.easeOut, 0, -145, 1, true);
      }
      else {
         var spalteRechts:Tween = new Tween(spalte_logos, "x", Regular.easeIn, -145, 0, 1, true);
      }
    }
    );
   
// LOAD XML FILE

var xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, showXML);
xmlLoader.load(new URLRequest("xml/muster1.xml"));

function showXML(e:Event):void {
XML.ignoreWhitespace = true; 
var anzahlLogos:XML = new XML(e.target.data);
var i:Number;
var myArray:Array = [];
for (i=0; i < anzahlLogos.client.length(); i++) {
   
// MOVIECLIP WIRD GENERIERT UND DIE BILDER WERDEN AUS DER XML DATEI GEHOLT

var rect:Shape = new Shape(); 
rect.graphics.beginFill(0xFFFFFF);
rect.graphics.drawRect(0, 0, 300, stage.stageHeight);
addChild(rect);
var ldr:Loader = new Loader();
ldr.x = 30;
ldr.y = i * 80;
ldr.mask = rect;

//LOGO WIRD AUS DER XML GEHOLT

var url:String = anzahlLogos.client[i].logo.text();
var urlReq:URLRequest = new URLRequest(url); 
ldr.load(urlReq);
//ldr.addEventListener(MouseEvent.CLICK, clickHandler);
addChild(ldr);

var link:String = anzahlLogos.client[i].link.text();

myArray.push(link);
trace("array" + myArray);


   // LINK WIRD AUF DEN LOGOS PLATZIERT
ldr.addEventListener(MouseEvent.CLICK,
   function clickHandler(evt:MouseEvent){ 
      trace(myArray[i]);
       }
    );


}
}
Matthijs1982 ist offline   Mit Zitat antworten