ahmad ajiloo
New Member
[FONT=tahoma,sans-serif]سلام
من یک چنین کلاسی درست کرده ام:
[/FONT]
[FONT=tahoma,sans-serif]مشکلم این است که دارم در processXML متغیرهای گلوبالی که تعریف کرده بودم را عوض می کنم. این متغیرها در تابع مذکور مقداردهی می شوند اما در توابع دیگر مقدارشان عوض نمی شود. یعنی اگر بعد از اینکه processXML اجرا شد، تابع getUnisNumber را صدا بزنم، همان مقدار صفر را که به صورت پیش فرض هنگام تعریف شدن می گیرد، برمیگرداند.
فایل xml ام هم اینجوری است:
[/FONT]
من یک چنین کلاسی درست کرده ام:
[/FONT]
PHP:
package {
import flash.display.MovieClip;
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;
public class White extends MovieClip{
public var myXML:XML;
public var unisNumber:int;
public function White() {
}
public function setContent():void{
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("universities.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);
}
public function processXML(e:Event):void {
myXML = new XML(e.target.data);
unisNumber = myXML.uni.length();
}
public function getUnisNumber():int{
return unisNumber;
}
public function getMyXML():XML{
return myXML;
}
}
}
فایل xml ام هم اینجوری است:
[/FONT]
PHP:
<?xml version="1.0" encoding="UTF-8"?>
<universities>
<uni id="u001">
<unix>100</unix>
<uniy>30</uniy>
<uniname>اميرکبير</uniname>
<ostan>تهران</ostan>
<korsi>
<pic picid="0">
<picaddr></picaddr>
<picinfo></picinfo>
</pic>
</korsi>
</uni>
</universities>