![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Aug 2008
Сообщений: 15
|
Есть класс:
package {
import flash.display.Sprite;
import flash.events.*;
import flash.net.*;
public class getXML extends Sprite{
public var xml:XML;
public var loader:URLLoader;
public function getXML(){
loader = new URLLoader ();
loader.addEventListener (Event.COMPLETE, loadXML);
loader.load (new URLRequest ("test.xml"));
trace(xml); // Выводит NULL
}
public function loadXML (e:Event):void {
xml = new XML (loader.data);
trace(xml); // Выводит содержимое XML файла
}
}
}
|
|
|||||
|
так же как и в обработчике, только вызывать их надо после события комплит
|
|
|||||
|
Регистрация: Aug 2008
Сообщений: 15
|
Цитата:
![]() Просто в дальнейшем, данные обрабатываются и потом должны быть переданы в другой класс, а я получается могу с этими данными работать только в пределах одного класса... вернее даже в пределах одного метода класса... |
|
|||||
|
эм кто сказал тебе сию глупость у тя все есть чтоб осуществить задуманное! подумай еще.
ладна. package {
import flash.display.Sprite;
import flash.events.*;
import flash.net.*;
public class XMLLoader extends Sprite{ классы называют с большой буквы и вроде как мне известно существительными а не глаголами
private var xml:XML;//инкапсуляция друг мой)
private var loader:URLLoader;
public function XMLLoader(){
loader = new URLLoader ();
loader.addEventListener (Event.COMPLETE, loadXML);
loader.load (new URLRequest ("test.xml"));
trace(xml); // Выводит NULL - естестна!
}
private function loadXML (e:Event):void {
xml = new XML (e.data);
//барабанная дробь!
doSomething(xml)
var someObject:SomeClass=new SomeObject(xml)
//или
var someObject2:SomeClass=new SomeClass2()
someObject2.setXmlData(xml);
trace(xml); // Выводит содержимое XML файла
}
private function doSomething(xmlData:XML):void{
trace(xmlData) //O_o
}
}
}
Последний раз редактировалось ramshteks; 03.09.2008 в 18:16. |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:01. |
|
|
« Предыдущая тема | Следующая тема » |
|
|