Показать сообщение отдельно
Старый 27.03.2010, 15:51
zakatnov вне форума Посмотреть профиль Отправить личное сообщение для zakatnov Найти все сообщения от zakatnov
  № 10  
Ответить с цитированием
zakatnov

Регистрация: Apr 2009
Сообщений: 43
alexcon314

участки кода отличаются негибкостью и "костылизмом", мне нужен класс который получает xml, обрабатывает, и отдает результат, тоесть

Код AS3:
Class.loadXml("xml.xml");
 
...... //другие методы не этого класса, количество от 0 до бесконечности.
 
var a:String = Class.getSomeStringFromXml("blabla");
и да, пихнуть класс в обработчик это нонсенс, то есть:

Код AS3:
public SomeClass
{
    private var xmlLoader:URLLoader = new URLLoader();
    public function SomeClass(xml:string)
    {
        //загружаем xml
        xmlLoader.load(new URLRequest(pathToXML));
        xmlLoader.addEventListener(Event.COMPLETE, xmlLoadHandler);
    }
 
    private function xmlLoadHandler(e:Event):void
    {
        getMedia();
        getMedia1();
        getMedia2();
        getMedia3();
        getMedia4();
        getMedia5();
        ......
        getMediaN();
    }
 
    //тут идет объявление всех getMedia
 
 
}
Если только так, то о какой гибкости мы можем говорить, какой смысл этого класса если я не могу в начале программы создать экземпляр класса, а в конце вызвать метод который возвратит данные которые мне нужны из этого XML, а в другом скрипте я не могу использовать этот же класс, если создание экземпляра и получение данных идут друг за другом? О каком полиморфизме мы можем тогда говорить?

Wolsh
Я никогда не кодил AS3 с помощью кадров.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Основной вопрос, как синхронно вызвать обработчик события, если этого не поддерживает язык, то наверняка должен быть какой-нибудь красивый "костыль".