ActionScriptで変数を1ページから別のページに渡すにはどうすればよいですか? ActionScriptでCustomEventsを使用してこれを行うことができるいくつかの解決策がありますが、わかりやすく簡単な解決策が見つかりませんでした。誰かが小さな例で変数を渡す方法を説明できますか?助けてください ?ActionScriptで変数を渡す方法は?
答えて
ベストプラクティスは、クラスが緊密に結合されていないようにイベントを使用することです。ここではそれを行うための一つの方法だが、利用可能な多くの異なるアプローチがもちろんあります....
//In your main class
private var dispatcher:EventDispatcher = new EventDispatcher();
private var page1:A;
private var page2:B;
public function Main()
{
page1 = new A(dispatcher);
page2 = new B(dispatcher);
}
//In Class A (or Class B)
private var dispatcher:EventDispatcher;
public function A(dispatcher:EventDispatcher)
{
this.dispatcher = dispatcher;
dispatcher.addEventListener(CustomEvent.EXAMPLE , customEventListener);
}
private function customEventListener(event:CustomEvent):void
{
trace(event.type , event.data);
}
private function anyMethod(data:Object):void
{
//using a CustomEvent with a data property
//also passing a type can help in selecting between actions
dispatcher.dispatchEvent(new CustomEvent(CustomEvent.EXAMPLE , data));
}
この質問は、多かれ少なかれパトリックによって回答されていますが、カスタムイベントの作成、について説明を省きました。ですから、PatrickSの答えに多かれ少なかれ追加するには、以下はカスタムイベントの例です。
package com.events
{
import flash.events.Event;
public class CustomEvent extends Event
{
public static const EXAMPLE:String = "example";
public var data:String;
public function CustomEvent(p_type:String,
p_data:String,
p_bubbles:Boolean = false,
p_cancelable:Boolean = false):void
{
super(p_type, p_bubbles, p_cancelable);
data = p_data;
}// end function
override public function clone():Event
{
return new CustomEvent(type, data, bubbles, cancelable);
}// end function
}// end class
}// end package
カスタムイベントを作成するには、イベントまたはそのサブクラスを拡張する必要があります。 MouseEvent CustomEventクラスは、Eventを継承するカスタムイベントです。
カスタムイベントを作成するときにカスタムイベントタイプを作成できます。イベントタイプは、イベントをディスパッチするときに引数として渡される文字列値です。解析するときは、型保証するため定数の形で与えることを強くお勧めします。この目的のために、Eventのパブリック静的定数プロパティを作成します。たとえば、イベントEventには、完全な文字列値を持つパブリック静的定数であるイベントタイプCOMPLETEがあります。この場合、CustomEventには文字列値が "example"のイベントタイプEXAMPLEがあります。
カスタムイベントを作成するときに、イベントが送出されたときに渡される値を格納するイベントプロパティを作成できます。たとえば、イベントProgressEventにはイベントプロパティbytesLoadedがあります。この場合、CustomEventにはdataというプロパティがあります。
カスタムイベントを作成する場合、コンストラクタには、イベントタイプ、バブルフラグ、キャンセル可能な状態のパラメータが必要です。ここでは、イベントのプロパティに保存したい値のパラメータを追加し、イベントのプロパティとともにディスパッチすることもできます。この場合、p_dataという文字列型のパラメータがあります。次に、superキーワードを使用して親クラスEventのコンストラクタを呼び出し、カスタムイベントを親クラスのコンストラクタにディスパッチするときに指定された引数を解析します。私はこれについて詳細には触れません。なぜならそれはクラス継承に入り、あなたは本当にそれを知る必要はないからです。次に、イベントプロパティの値に、イベントが送出されたときに解析されるデータを割り当てます。この場合、イベントCustomEventのプロパティデータには、CustomEventのコンストラクタを介して解析されたp_data引数の値が割り当てられます。
私はこれが助けて欲しいと思っています:)
- 1. プロミスチェーンで変数を渡す方法は?
- 2. SASでマクロ変数をマクロ変数名に渡す方法は?
- 3. actionscriptでグローバル変数を定義する方法
- 4. queryselectorAllに変数を渡す方法は?
- 5. 変数を.post()に渡す方法は?
- 6. リクエストボディに変数を渡す方法は?
- 7. リレーコンテナ間で変数を渡す方法
- 8. mysql_queryで変数を渡す方法
- 9. SSISパラメータで変数を渡す方法
- 10. printf内で変数を渡す方法
- 11. Find_element_by_xpath内で変数を渡す方法
- 12. 変数を渡すActionscript 3のByRefを使用する
- 13. C++ Sprintf 2nd(format)引数で変数を渡す方法は?
- 14. Golangコールバック関数で変数を渡す方法は?
- 15. ループ変数のjqueryで変数を渡す方法
- 16. このコードをActionScript 2.0からActionScript 3.0に変換する方法は?
- 17. ノードJSでは、http.requestコールバックに変数を渡す方法は?
- 18. Restler - 変数をサブクラスに渡す方法
- 19. カスタムバリデータに変数を渡す方法
- 20. jQuery:セレクタに変数を渡す方法
- 21. JSファイルに変数を渡す方法
- 22. PHPMailer変数を渡す方法
- 23. Selenium IDE:変数を渡す方法
- 24. env変数をGNOMEに渡す方法
- 25. 変数を-Filterに渡す方法
- 26. Meteorヘルパーに変数を渡す方法
- 27. Laravel - レイアウトパーシャルビューに変数を渡す方法
- 28. PHP変数をprocessing.jsに渡す方法
- 29. 変数に値を渡す方法
- 30. Rails変数をルートに渡す方法