Layer.beginTransition

機能/意味

トランジションの開始

タイプ
Layerクラスのメソッド
構文
beginTransition(name, withchildren=true, transsrc=null, options)
引数
name

トランジション名を指定します。
デフォルトでは 'crossfade' ( クロスフェード )、'universal' ( ユニバーサルトランジション )、'scroll' ( スクロールトランジション ) が定義されています。

withchildren

子レイヤも一緒にトランジションを行うかどうかです。
真を指定すると子レイヤごとトランジションします。
偽を指定するとメソッドを実行するレイヤのみがトランジションします。

transsrc

切り替わり先となるレイヤを指定します。
トランジションによっては指定が必要ないもの ( 単独でトランジションするものなど ) もあるかもしれません。

options

トランジションのオプションを辞書配列で指定します。
必要なオプションはトランジションの種類によって異なります。
トランジションの種類に関係なく、共通して指定できるオプションとして 'selfupdate' メンバと 'callback' メンバがあります。
'selfupdate' メンバが 真 の場合は、吉里吉里は自動での画面更新を行わなくなります。
この場合は、適宜プログラム側で Layer.update メソッドなどで画面を更新しなければなりません。
この機能は、トランジションによる描画とプログラムによる描画を完全に同期させたい場合に便利です。
'callback' メンバにTJS2のメソッドを指定すると、描画が実際に行われる度にそのメソッドが呼ばれます。
このメソッド(コールバックされるメソッド)では 'tick' 値を0以上の値で返してください。
多くのトランジションは、ミリ秒単位での実際の時間である 'tick' 値を元にトランジションを行っていますが、このコールバックされるメソッドで任意のtickを返すように実装することにより、トランジションの効果を任意の時点で巻き戻したり、途中で早送りをしたりが可能になり、実際の時間に関係なくトランジションを制御できるようになります。
多くのトランジションは、オプションの 'time' メンバで指定した値がトランジションの終端であると見なしています。
そのため、たとえばオプションの 'time' には 1000 等の適当な値を指定しておき、このコールバックされるメソッドで 1000 未満の値を返すことにより、任意の段階でのトランジションの表示などを行わせることができるようになります。
また、多くのトランジションの場合、オプションの 'time' で指定された値に 'tick' 値が達すると、トランジションが停止しますので、トランジションを停止させたくない場合は、 'time' で指定した値未満の値を常に指定するようにしてください。

戻り値
なし (void)
説明

トランジションを開始します。
children=真 の場合のトランジションは、終了するときに、transsrc で指定したトランジション元とそっくり親子関係のツリー構造が入れ替わります。
children=偽 の場合は、トランジション元のレイヤとメソッドを実行したレイヤ ( トランジション先のレイヤ ) のみが入れ替わります。
どちらの場合も、ツリー構造上での入れ替えが行われるため注意してください。
このメソッドはトランジションを開始させるだけですぐに戻ります。