{lang: 'de'}
Flashhilfe.de - Flash Community

Link auf externe Bilder über XML [Flash 9]

 


AntwortenRegistrieren Seite1  

Matthijs1982#1
Benutzerbild von Matthijs1982
Beiträge: 2
Wohnort: Düsseldorf
Registriert: Jan 2010

06.01.2010, 12:35

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:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
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]);
       }
    );


}
}
springer#2
Benutzerbild von springer
Beiträge: 4909
Wohnort: zuhaus
Registriert: Apr 2004

06.01.2010, 12:41