0

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)
        }

    }
}

次の方法でビュースタックに追加しようとしています

var myStack:ViewStack= new ViewStack();

mystack.addChild(homeScreen)

これは動作しません。正しい方法は何ですか?

IDを割り当てる必要があることは承知していますが、今のところ、そこにビューを表示したいだけです。

4

2 に答える 2

2

「機能しない」を定量化できますか?コンパイル時エラーが発生していますか。または実行時エラー?または、他の何か?

ViewStackの子はすべてコンテナである必要があると確信しています。したがって、理論的には、カスタムコンポーネントはUIComponentではなく拡張コンテナである必要があります。

http://livedocs.adobe.com/flex/3/langref/mx/containers/ViewStack.htmlを引用するには

ViewStackナビゲーターコンテナは、子コンテナのコレクションで構成されます

于 2010-06-10T13:51:49.207 に答える
1

AS3で作成したViewStackをステージ上の親に追加する必要があります。

var myStack:ViewStack= new ViewStack();
mystack.addChild(homeScreen)
this.addChild(myStack);
于 2010-06-10T13:50:30.253 に答える