パッケージmx.effects
public class TweenEffect
継承TweenEffect Inheritance Effect Inheritance EventDispatcher Inheritance Object
SubclassesAnimateProperty, Blur, Dissolve, Fade, Glow, Move, Pause, Resize, Rotate, SeriesEffect, Zoom

TweenEffect クラスは、Tween オブジェクトを基にしたすべてのエフェクトのスーパークラスです。このクラスでは、Tween ベースのエフェクトすべてに共通のメソッドとプロパティをカプセル化して、コードの無駄な繰り返しを防止しています。

TweenEffect クラスのサブクラスを作成して、アニメーションを長時間再生するエフェクトを定義できます。たとえば、Resize エフェクトを使用すると、ターゲットのサイズ変更が指定した時間分だけ有効になります。

MXML シンタックスexpandedMXML シンタックスの非表示

<mx:TweenEffect> タグはスーパークラスのすべてのタグ属性を継承し、次のタグを追加します。

 <mx:TagName プロパティ easingFunction="イージング関数名、デフォルト値なし" 

イベント tweenEnd="デフォルト値なし" />

例の表示

関連項目

mx.effects.Tween
mx.effects.effectClasses.TweenEffectInstance
カスタムエフェクトの作成について
例 : トゥイーンエフェクトの作成


パブリックプロパティ
 プロパティ定義
 InheritedclassName : String
"Fade" など、エフェクトクラスの名前です。
Effect
 Inheritedconstructor : Object
特定のオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
 InheritedcustomFilter : EffectTargetFilter
エフェクトを再生するターゲットを特定するために、エフェクトによって使用されるタイプ EffectTargetFilter のカスタムフィルタオブジェクトを指定します。
Effect
 Inheritedduration : Number
エフェクトの継続時間を表します (ミリ秒単位)。
Effect
  easingFunction : Function = null
アニメーションのイージング関数を表します。
TweenEffect
 Inheritedfilter : String
エフェクトのターゲットをフィルタリングするアルゴリズムを指定します。
Effect
 InheritedinstanceClass : Class
このエフェクトクラスのエフェクトインスタンスクラスを指定する Class 型のオブジェクトを表します。
Effect
 InheritedisPlaying : Boolean
エフェクトのインスタンスのいずれかが現在再生中の場合に true、そうでない場合に false となる読み取り専用フラグです。
Effect
 Inheritedprototype : Object
[static] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
 InheritedrelevantProperties : Array
フィルタリング実行時に使用するプロパティ名の配列を表します。
Effect
 InheritedrelevantStyles : Array
フィルタリング実行時に使用するスタイル名の配列を表します。
Effect
 InheritedrepeatCount : int = 1
エフェクトを繰り返す回数を表します。
Effect
 InheritedrepeatDelay : int = 0
エフェクトを繰り返す前の待機時間を表します (ミリ秒単位)。
Effect
 InheritedstartDelay : int = 0
エフェクトを開始する前の待機時間を表します (ミリ秒単位)。
Effect
 InheritedsuspendBackgroundProcessing : Boolean = false
true の場合、エフェクトの再生中にすべてのバックグラウンド処理をブロックします。
Effect
 Inheritedtarget : Object
このエフェクトが適用される UIComponent オブジェクトを表します。
Effect
 Inheritedtargets : Array
エフェクトのターゲットである UIComponent オブジェクトの配列を表します。
Effect
パブリックメソッド
 メソッド定義
  TweenEffect(target:Object = null)
コンストラクタ。
TweenEffect
 InheritedaddEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
EventDispatcher
 InheritedcaptureStartValues():void
エフェクトのターゲットにおいて関連するプロパティの現在値をキャプチャします。
Effect
 InheritedcreateInstance(target:Object = null):EffectInstance
1 つのエフェクトインスタンスを作成し、それを初期化します。
Effect
 InheritedcreateInstances(targets:Array = null):Array
ターゲットオブジェクトの配列を取得し、各ターゲットで createInstance() メソッドを呼び出します。
Effect
 InheriteddispatchEvent(event:Event):Boolean
イベントをイベントフローに送出します。
EventDispatcher
 Inheritedend(effectInstance:EffectInstance = null):void
現在再生中のエフェクトをすべて中断し、直ちにエフェクトの終わりにジャンプします。
Effect
 InheritedgetAffectedProperties():Array
ストリングの配列を返します。各ストリングは、このエフェクトによって変更されるプロパティの名前です。
Effect
 InheritedhasEventListener(type:String):Boolean
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 InheritedhasOwnProperty(name:String):Boolean
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 InheritedisPrototypeOf(theClass:Object):Boolean
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inheritedpause():void
resume() メソッドを呼び出すまで、エフェクトを一時停止します。
Effect
 Inheritedplay(targets:Array = null, playReversedFromEnd:Boolean = false):Array
エフェクトの再生を開始します。
Effect
 InheritedpropertyIsEnumerable(name:String):Boolean
指定されたプロパティが存在し、列挙可能かどうかを示します。
Object
 InheritedremoveEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
 Inheritedresume():void
pause() メソッドを呼び出し、エフェクトを一時停止した後、再開させます。
Effect
 Inheritedreverse():void
エフェクトが現在再生中の場合に、エフェクトの現在位置から開始して、逆順でエフェクトを再生します。
Effect
 InheritedsetPropertyIsEnumerable(name:String, isEnum:Boolean = true):void
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 InheritedtoString():String
指定されたオブジェクトのストリング表現を返します。
Object
 InheritedvalueOf():Object
指定されたオブジェクトのプリミティブ値を返します。
Object
 InheritedwillTrigger(type:String):Boolean
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
Protectedメソッド
 メソッド定義
 InheritedapplyValueToTarget(target:Object, property:String, value:*, props:Object):void
エフェクトインフラストラクチャによって内部的に使用されます。
Effect
 InheritedeffectEndHandler(event:EffectEvent):void
エフェクトインスタンスの再生終了時に呼び出されます。
Effect
 InheritedeffectStartHandler(event:EffectEvent):void
このメソッドは、エフェクトインスタンスの再生開始時に呼び出されます。
Effect
 InheritedfilterInstance(propChanges:Array, targ:Object):Boolean
エフェクトインスタンスのフィルタリングに必要なロジックを決定します。
Effect
 InheritedgetValueFromTarget(target:Object, property:String):*
ターゲットからプロパティの値を取得するために captureStartValues() によって呼び出されます。
Effect
 InheritedinitInstance(instance:EffectInstance):void
エフェクトインスタンスにエフェクトのプロパティをコピーします。
Effect
  tweenEventHandler(event:TweenEvent):void
TweenEffect から TweenEvent が送出されたときに呼び出されます。
TweenEffect
イベント
 イベント一覧定義
 InheritedeffectEnd エフェクトの再生停止時 (エフェクトの再生完了時、またはエフェクトが end() メソッドの呼び出しにより中断されたとき) に送出されます。Effect
 InheritedeffectStart エフェクトの再生開始時に送出されます。Effect
  tweenEnd トゥイーンエフェクトの終了時に送出されます。TweenEffect
  tweenStart onTweenUpdate() メソッドの最初の呼び出しに対応する、トゥイーンエフェクトの開始時に送出されます。TweenEffect
  tweenUpdate トゥイーンエフェクトによりターゲットが更新されるたびに送出されます。TweenEffect
プロパティの詳細
easingFunctionプロパティ
public var easingFunction:Function = null

アニメーションのイージング関数を表します。イージング関数は初期値と終了値の間の補間に使用されます。一般のイージング関数は線形補間を実行するだけですが、より高度なイージング関数では加速と減速の効果を生成して、アニメーションがより自然になるようにします。

イージング関数を指定しない場合は、Math.sin() メソッドに基づくイージング関数が使用されます。

イージング関数は、Robert Penner 氏が普及に尽力した関数シグネチャに従っています。この関数では、4 つの引数を使用できます。1 番目の引数は、アニメーションの開始時刻を 0 とした "現在の時刻" です。2 番目の引数は、アニメーション開始時の初期値 (数値) です。3 番目の引数は、終了値から初期値を引いた値です。4 番目の引数は、アニメーションの再生時間です。戻り値は、現在の時刻に対する補間値になります。通常、この値は初期値と終了値の間の値になります。

このプロパティの値は、必ず関数オブジェクトとなります。

Flex は、mx.effects.easing パッケージにイージング関数を一式含んでいます。

詳細については、http://www.ericd.net/chapter7.pdf を参照してください。

コンストラクタの詳細
TweenEffect()コンストラクタ
public 関数 TweenEffect(target:Object = null)

コンストラクタ。

パラメータ
target:Object (default = null) — このエフェクトでアニメーション化するオブジェクトを表します。
メソッドの詳細
tweenEventHandler()メソッド
protected function tweenEventHandler(event:TweenEvent):void

TweenEffect から TweenEvent が送出されたときに呼び出されます。このメソッドをオーバーライドする場合、必ずスーパーメソッドを呼び出すようにしてください。

パラメータ
event:TweenEvent — TweenEvent 型のイベントオブジェクトを表します。
イベントの詳細
tweenEndevent 
イベントオブジェクトの型: mx.events.TweenEvent
TweenEvent.type property = mx.events.TweenEvent.TWEEN_END

トゥイーンエフェクトの終了時に送出されます。このイベントは、TweenEffectInstance.onTweenEnd() メソッドの呼び出しに対応しています。

トゥイーンエフェクトが 1 度だけ再生された場合、このイベントは effectEnd イベントと同時に発生します。トゥイーンエフェクトを繰り返し再生させる場合、このイベントはエフェクトが繰り返されるたびに発生し、最後のエフェクトの再生後に endEffect イベントが発生します。

TweenEvent.TWEEN_END 定数により、tweenEnd イベントのイベントオブジェクトの type プロパティ値が定義されます。

イベントオブジェクトの各プロパティには次の値が設定されます。

プロパティ
bubblesfalse
cancelablefalse
currentTargetイベントを処理するイベントリスナーを定義するオブジェクト。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。
valueonTweenEnd() メソッドに渡された値です。
tweenStartevent  
イベントオブジェクトの型: mx.events.TweenEvent
TweenEvent.type property = mx.events.TweenEvent.TWEEN_START

onTweenUpdate() メソッドの最初の呼び出しに対応する、トゥイーンエフェクトの開始時に送出されます。同時に Flex によって、エフェクトの最初の tweenUpdate イベントも送出されます。

Effect.effectStart イベントは tweenStart イベントの前に送出されます。

TweenEvent.TWEEN_START 定数により、tweenStart イベントのイベントオブジェクトの type プロパティ値が定義されます。

イベントオブジェクトの各プロパティには次の値が設定されます。

プロパティ
bubblesfalse
cancelablefalse
currentTargetイベントを処理するイベントリスナーを定義するオブジェクト。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。
valueonTweenUpdate() メソッドに渡される値です。
tweenUpdateevent  
イベントオブジェクトの型: mx.events.TweenEvent
TweenEvent.type property = mx.events.TweenEvent.TWEEN_UPDATE

トゥイーンエフェクトによりターゲットが更新されるたびに送出されます。このイベントは、TweenEffectInstance.onTweenUpdate() メソッドの呼び出しに対応しています。

TweenEvent.TWEEN_UPDATE 定数により、tweenUpdate イベントのイベントオブジェクトの type プロパティ値が定義されます。

イベントオブジェクトの各プロパティには次の値が設定されます。

プロパティ
bubblesfalse
cancelablefalse
currentTargetイベントを処理するイベントリスナーを定義するオブジェクト。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。
valueonTweenUpdate() メソッドに渡される値です。
SimpleTweenEffectExample
<?xml version="1.0"?>
<!-- Simple example to demonstrate the TweenEffect class. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">

    <mx:Script>
        <![CDATA[
        
            import mx.events.TweenEvent;

            // Event handler for the tweenUpdate and tweenEnd effects.            
            private function tweenUpdateHandler(event:TweenEvent):void {
                // Access current width of the image.
                currentWidth.text="Current width (in pixels): " + String(event.value[0]);
            }

            // Event handler for the reset button.            
            private function resetHandler():void {
                expand.end(); 
                img.width=30; 
                currentWidth.text="Current width (in pixels): 30";                
                img.height=60; 
                button1.enabled=true;
            }
        ]]>
    </mx:Script>

    <mx:Resize id="expand" target="{img}" widthTo="100" heightTo="200" 
        duration="10000" 
        tweenUpdate="tweenUpdateHandler(event);" 
        tweenEnd="tweenUpdateHandler(event);"/>

    <mx:Panel title="Resize Effect Example" width="100%" height="100%" 
        paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10">

        <mx:Text width="100%" color="blue" 
            text="Use the Button controls to resize the image."/>

        <mx:HBox width="100%">
            <mx:Image id="img" width="30" height="60"
                source="@Embed(source='assets/Nokia_6630.png')"/>
            <mx:Text id="currentWidth" height="20" width="100%"/>     
        </mx:HBox>
            
        <mx:ControlBar>
            <mx:Button id="button1" label="Start" click="expand.play(); button1.enabled=false;"/>
            <mx:Button label="Pause" click="expand.pause();"/>
            <mx:Button label="Resume" click="expand.resume();"/>
            <mx:Button label="Reverse" click="expand.reverse();"/>
            <mx:Button label="End" click="expand.end();"/>
            <mx:Button label="Reset" click="resetHandler();"/>
        </mx:ControlBar>
        
    </mx:Panel>
</mx:Application>