flex cairngorm addComand не работает

Привет всем) Мне нужна помощь с пониманием фреймворка Cairngorm для flex.

Я кодирую простой слайдер приложения. У меня есть основной класс, в котором у меня есть тег

<fx:Declarations>
    <control:AppController id="appController" />
</fx:Declarations>

Сам класс AppController расширяет FrontController функцией конструктора:

public function AppController()
    {
        addCommand(SliderEvent.BUILD, SliderBuildCommand);
        addCommand(SliderEvent.TRANSITION, SliderTransitionCommand);
    }

и, наконец, код класса SliderBuildCommand:

 public function SliderBuildCommand(){}

    public function execute(event:CairngormEvent):void
    {
        config.loadSlides(this);
    }

К сожалению, при отладке я вижу, что добавление команды не сработало. Это можно увидеть, если установить точку останова в строке "с onfig.loadSlides(this)". Однако команда (addCommand) обрабатывается. Есть идеи, почему это происходит? Может быть, я нуб и не вижу очевидного:)

1 ответ

Вместо добавления / отображения команд в AppControllerконструктор. Объявите это в initialize() функция. Пример приведен ниже для вашей справки.

public class AppController extends FrontController
    {
        public function AppController()
        {
            super();
        }

        public function initialize():void
        {
            this.addCommand(SliderEvent.BUILD, SliderBuildCommand);
            this.addCommand(SliderEvent.TRANSITION, SliderTransitionCommand);
        }
    }
Другие вопросы по тегам