0

さまざまな場所から呼び出されているLoginView.mxmlクラスがあります。LoginView.mxmlがどのクラスから呼び出されたかを知るためのメソッドが存在するかどうかを知りたいですか?

編集

私はその質問をうまく表現していません。シナリオは次のとおりです

LoginView.mxmlというビューと、AAAView.mxmlBBBView.mxmlなどの2つのビューがあります。AAAViewとBBBViewはどちらも、navigator.pushView(LoginView)を使用してLoginViewを呼び出します。

ここで、AAAViewが呼び出したかどうかを示すLoginViewのコードが必要です。

4

1 に答える 1

0

navigator.pushView(viewToPopUp、data)の2番目のパラメーターは、オブジェクトタイプです。そこに好きなものを入れることができます。あなたの場合、この呼び出しがコード化されているビューの名前を示す文字列を入れたいと思うかもしれません。

AAAViewのどこか:

protected function someButton_click(e:MouseEvent):void
{
     navigator.push(LoginView, "AAAView");
}

次に、LoginView.mxmlで:

protected function loginView_creationComplete(e:Event):void
{
     if (data.toString() == "AAAView")
     {
       // do what you need if AAAView was the one that popped up LoginView
     }
     else ...
}

各ビューには、オブジェクト型のデータメンバーがあります。ビューが別のビューからnavigator.pushViewedでなかった場合、またはnavigator.pushViewが2番目のパラメーターを指定しなかった場合は、nullになります。

if(data.toString()== "AAAView")ブロックを持つことができます。LoginViewの任意の関数で。

于 2012-12-01T21:54:14.800 に答える