Hoi allen,
Momenteel ben ik druk bezig met het uitlezen van XML in Actionscript 3.0. Ik heb een klasse gemaakt die dit zou moeten kunnen, echter loop ik tegen een probleem aan.
In de functie 'loadXML' laadt de xmlLoader het XML bestand, als deze klaar is zou hij de functie 'xmlLoaded' moeten aanroepen. Dit doet hij ook wel, echter.. vanuit deze functie kan ik de klasse variabelen niet aanpassen (bv. sPuzzelName). Ideaal zou zijn dat hij de klasse variabelen vult met data uit de nodes, en dat ik op de plek waar ik de Puzzels-class aanroep de indivuele variabelen kan aanroepen.
Is dit de juiste approach? Mis ik iets?
Alvast bedankt!
Momenteel ben ik druk bezig met het uitlezen van XML in Actionscript 3.0. Ik heb een klasse gemaakt die dit zou moeten kunnen, echter loop ik tegen een probleem aan.
In de functie 'loadXML' laadt de xmlLoader het XML bestand, als deze klaar is zou hij de functie 'xmlLoaded' moeten aanroepen. Dit doet hij ook wel, echter.. vanuit deze functie kan ik de klasse variabelen niet aanpassen (bv. sPuzzelName). Ideaal zou zijn dat hij de klasse variabelen vult met data uit de nodes, en dat ik op de plek waar ik de Puzzels-class aanroep de indivuele variabelen kan aanroepen.
code:
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
| public class Puzzel
{
protected var xmlLoader:URLLoader;
protected var xml:XML;
protected var sPuzzelName;
public function Puzzel()
{
}
public function loadXml(Filename:String):void
{
xmlLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);
xmlLoader.load(new URLRequest(Filename));
}
function xmlLoaded (evt: Event)
{
try
{
XML.ignoreWhitespace = true;
xml = new XML(evt.target.data);
this.sPuzzelName = xml..@PuzzelName; // Dit werkt dus niet
}
catch(e:Error)
{
trace('Er zit een fout in de XML: ' + e.message)
return;
}
}
}
} |
Is dit de juiste approach? Mis ik iets?
Alvast bedankt!