flex добавить дочерний элемент radiobutton в VBox

У меня проблемы с добавлением радиокнопки в VBox в ActionScript.

    var radioButton:RadioButton = new RadioButton();
    radioButton.groupName = "source";
    radioButton.label = "label";

    radioButton.selected = false;
    radioButton.addEventListener(Event.CHANGE, sourceChangeHandler);

    vBox.addChild(radioButton);

Сначала я создал эти радиокнопки в mxml, и они работали нормально, но теперь, когда радиокнопки нужно динамически генерировать в ActionScript, они не работают.

При входе в отладчик я получаю сообщение об ошибке привязки (1009) при попытке выполнить оператор addchild, и в VBox ничего не отображается. Есть ли что-то, что я делаю не так?

1 ответ

Решение

Это выглядит хорошо, единственное, что я вижу, это то, что вы можете попробовать изменить

radioButton = new RadioButton();

в

var radioButton:RadioButton = new RadioButton();

Если это не так, это может быть связано с тем, как вы создаете экземпляр вашего VBox.

РЕДАКТИРОВАТЬ

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

creationPolicy="All"

Таким образом, vBox существует в памяти, когда к нему добавляется переключатель.

Другие вопросы по тегам