программно добавлять виды в стек видимости - PullRequest
0 голосов
/ 10 июня 2010

Я пытаюсь выяснить, как в as3 (не mxml) добавить представления в стек представлений.

Например, у меня есть такой компонент представления, как

package components.screens
{
    import mx.controls.Label;
    import mx.core.UIComponent;

    public class HomeScreen extends UIComponent
    {
        private var l:Label=new Label()

        public function HomeScreen()
        {
            super();

            l.text="home";

            addChild(l)
        }

    }
}

Iпытаюсь добавить его в стек просмотра следующим образом

var myStack:ViewStack= new ViewStack();

mystack.addChild(homeScreen)

Это не работает.Какой правильный путь?

Я знаю, что должен назначить идентификаторы, но сейчас я просто хочу получить представление там

Ответы [ 2 ]

2 голосов
/ 10 июня 2010

Можете ли вы дать количественную оценку "Не работает" Вы получаете ошибку времени компиляции;или ошибка времени выполнения?Или что-то другое?

Я почти уверен, что все дочерние элементы ViewStack должны быть контейнерами;так что в теории ваш пользовательский компонент должен расширять контейнер, а не UIComponent.

В кавычках http://livedocs.adobe.com/flex/3/langref/mx/containers/ViewStack.html

Контейнер навигатора ViewStack состоит из коллекции дочерних контейнеров

1 голос
/ 10 июня 2010

Вам необходимо добавить созданный AS3 ViewStack к какому-либо родителю на сцене.

var myStack:ViewStack= new ViewStack();
mystack.addChild(homeScreen)
this.addChild(myStack);
...