| 包 | fl.transitions |
| 类 | public class Tween |
| 继承 | Tween EventDispatcher Object |
| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
Tween 类还使您能够指定各种缓动方法。 “缓动”是动画运行期间的渐进加速和渐进减速效果,有助于使动画显得更逼真。 fl.transitions.easing 包提供了很多缓动方法(包括这种加速和减速的等式),它们会相应地更改缓动动画。
若要使用 Tween 类的这些方法和属性,请将 new 运算符用于构造函数来创建该类的一个实例,并指定一个缓动方法作为参数。 例如:
import fl.transitions.Tween; import fl.transitions.easing.*; var myTween:Tween = new Tween(myObject, "x", Elastic.easeOut, 0, 300, 3, true);
相关 API 元素
| 属性 | 由以下参数定义 | ||
|---|---|---|---|
| begin : Number = NaN
补间开始前目标对象的指定属性的初始值。 | Tween | ||
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | |
| duration : Number
以帧或秒为单位的补间动画的持续时间。 | Tween | ||
| finish : Number
一个数字,指示要补间的目标对象属性的结束值。 | Tween | ||
| FPS : Number
计入补间动画的每秒的帧数。 | Tween | ||
| func : Function
用于补间的缓动函数。 | Tween | ||
| isPlaying : Boolean = false
指示当前是否正在播放补间动画。 | Tween | ||
| looping : Boolean = false
指示补间是否将循环。 | Tween | ||
| obj : Object = null
正在进行补间的目标对象。 | Tween | ||
| position : Number
目标对象补间属性的当前值。 | Tween | ||
| prop : String
受目标对象的补间影响的属性的名称。 | Tween | ||
| time : Number
动画持续时间内的当前时间。 | Tween | ||
| useSeconds : Boolean = false
指示补间是否播放一段时间或帧数。 | Tween | ||
| 方法 | 由以下参数定义 | ||
|---|---|---|---|
Tween(obj:Object, prop:String, func:Function, begin:Number, finish:Number, duration:Number, useSeconds:Boolean = false)
创建 Tween 类的实例。 | Tween | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | |
指示补间动画从当前动画点继续补间到一个新的结束和持续时间点。 | Tween | ||
![]() |
将事件调度到事件流中。 | EventDispatcher | |
将补间动画直接快进到补间动画的最终值。 | Tween | ||
![]() |
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | |
![]() |
表示对象是否已经定义了指定的属性。 | Object | |
![]() |
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | |
将补间动画快进到已停止的动画的下一帧。 | Tween | ||
从已停止动画的当前停止点播放补间动画的前一帧。 | Tween | ||
![]() |
表示指定的属性是否存在、是否可枚举。 | Object | |
![]() |
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | |
继续播放已停止的补间动画。 | Tween | ||
使补间动画的播放后退到其开始值。 | Tween | ||
![]() |
设置循环操作动态属性的可用性。 | Object | |
从开始点开始播放补间动画。 | Tween | ||
在当前值停止播放补间动画。 | Tween | ||
![]() |
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | |
![]() |
返回指定对象的字符串表示形式。 | Object | |
![]() |
返回指定对象的原始值。 | Object | |
![]() |
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher | |
指示补间动画按与其补间属性最后一次增加的方向相反的方向播放。 | Tween | ||
| 事件 | 摘要 | 由以下参数定义 | ||
|---|---|---|---|---|
![]() | [广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | ||
![]() | [广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | ||
| 指示 Tween 已更改并且屏幕已更新。 | Tween | |||
| 指示 Tween 已到达结尾并已完成。 | Tween | |||
| 指示 Tween 在循环模式中已从头开始重新播放。 | Tween | |||
| 指示 Tween 在暂停后继续播放。 | Tween | |||
| 指示动画已经开始播放。 | Tween | |||
| 指示由于显式调用 Tween.stop(),Tween 已停止。 | Tween | |||
begin | 属性 |
public var begin:Number = NaN| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
补间开始前目标对象的指定属性的初始值。
duration | 属性 |
finish | 属性 |
FPS | 属性 |
FPS:Number| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
计入补间动画的每秒的帧数。 默认情况下,使用当前舞台帧频计算补间动画。 设置此属性会重新计算每秒向 Tween.FPS 属性显示的动画属性中的增加数量,而不是当前舞台帧频。 设置 Tween.FPS 属性不会更改舞台的实际帧频。
注意:除非首先明确设置 Tween.FPS 属性,否则该属性返回 undefined。
实现
public function get FPS():Number public function set FPS(value:Number):void示例 ( 如何使用本示例 )
import fl.transitions.Tween;
import fl.transitions.easing.*;
var tween:Tween = new Tween(mc, "x", Elastic.easeOut, 0, 300, 3, true);
tween.FPS = 60;
mc.addEventListener(MouseEvent.CLICK, onClick);
function onClick(evt:MouseEvent):void {
tween.start();
}
func | 属性 |
public var func:Function| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
用于补间的缓动函数。
isPlaying | 属性 |
public var isPlaying:Boolean = false| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示当前是否正在播放补间动画。
looping | 属性 |
public var looping:Boolean = false| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示补间是否将循环。 如果值为 true,则每次补间结束后都将重新开始,无限重复。 如果值为 false,则补间将只播放一次。
obj | 属性 |
public var obj:Object = null| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
正在进行补间的目标对象。
position | 属性 |
prop | 属性 |
public var prop:String| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
受目标对象的补间影响的属性的名称。
time | 属性 |
useSeconds | 属性 |
public var useSeconds:Boolean = false| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示补间是否播放一段时间或帧数。 true 值将使补间动画播放 duration 属性所指定的秒数。 false 将使补间动画播放一定的帧数。
Tween | () | 构造函数 |
public function Tween(obj:Object, prop:String, func:Function, begin:Number, finish:Number, duration:Number, useSeconds:Boolean = false)| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
创建 Tween 类的实例。 此构造函数与 new 运算符一起使用:var myTween:Tween = new Tween()。
obj:Object — Tween 作为目标的对象。
| |
prop:String — 要影响的属性的名称(obj 参数值)。
| |
func:Function — 要使用的缓动函数的名称。
| |
begin:Number — prop 参数的开始值。
| |
finish:Number — 一个指示 prop 参数(要补间的目标对象属性)的结束值的数字。
| |
duration:Number — 动画的时间长度;如果为负或被省略,则设置为 infinity。
| |
useSeconds:Boolean (default = false) — 一个标志,指定是否使用秒数而不是帧数。 如果为 true,则函数使用秒,如果为 false,则使用相对于 duration 参数中指定的值的帧。
|
相关 API 元素
continueTo | () | 方法 |
public function continueTo(finish:Number, duration:Number):void| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示补间动画从当前动画点继续补间到一个新的结束和持续时间点。
参数
finish:Number — 一个数字,指示要补间的目标对象属性的结束值。
| |
duration:Number — 一个指示补间动画的时间长度或帧数的数字;如果 Tween.start() useSeconds 参数设置为 true,则以时间长度为度量单位,如果设置为 false,则以帧数为度量单位。
|
相关 API 元素
fforward | () | 方法 |
public function fforward():void| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
将补间动画直接快进到补间动画的最终值。
nextFrame | () | 方法 |
public function nextFrame():void| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
将补间动画快进到已停止的动画的下一帧。 使用 Tween.stop() 方法停止补间动画后,使用该方法可以将补间动画一次快进一帧。
注意:该方法只能用于基于帧的补间。 通过将 useSeconds 参数设置为 false,可以在创建时将补间设置为基于帧。
prevFrame | () | 方法 |
resume | () | 方法 |
public function resume():void| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
继续播放已停止的补间动画。 通过使用 Tween.stop() 方法停止补间动画后,使用该方法可以继续执行补间动画。
注意:该方法只能用于基于帧的补间。 通过将 useSeconds 参数设置为 false,可以在创建时将补间设置为基于帧。
rewind | () | 方法 |
public function rewind(t:Number = 0):void| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
使补间动画的播放后退到其开始值。 如果在补间动画仍在播放期间调用 Tween.rewind(),则补间动画将后退到其开始值,然后继续播放。 如果在补间动画已停止或已结束其动画期间调用 Tween.rewind(),则补间动画将后退到其开始值,并保持停止状态。 通过使用 Tween.stop() 方法停止补间动画后,使用该方法可以将补间动画后退到它的开始点,或者在播放补间动画时使它后退。
参数
t:Number (default = 0) — 开始值。
|
start | () | 方法 |
public function start():void| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
从开始点开始播放补间动画。此方法用于在补间动画停止或已结束其动画后,从其动画的开始处重新开始补间。
stop | () | 方法 |
public function stop():void| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
在当前值停止播放补间动画。
yoyo | () | 方法 |
public function yoyo():void| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示补间动画按与其补间属性最后一次增加的方向相反的方向播放。 如果在 Tween 对象的动画完成之前调用此方法,则该动画将立即跳至其播放末尾,然后从该点以相反方向播放。 通过在 TweenEvent.MOTION_FINISH 事件处理函数中调用 Tween.yoyo() 方法,可以获得动画完成其整个播放后反转其整个播放的效果。 此过程可确保 Tween.yoyo() 方法的反转效果直到当前补间动画完成后才会开始。
motionChange | 事件 |
fl.transitions.TweenEvent属性 TweenEvent.type =
fl.transitions.TweenEvent.MOTION_CHANGE| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示 Tween 已更改并且屏幕已更新。
事件对象的属性有下列值:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 属性的值。 |
target | 调度该事件的对象;它不一定是侦听该事件的对象。使用 currentTarget 属性始终可以访问侦听该事件的对象。 |
time | 事件发生时的 Tween 时间。 |
position | 当事件发生时,由 Tween 控制的属性的值。 |
motionFinish | 事件 |
fl.transitions.TweenEvent属性 TweenEvent.type =
fl.transitions.TweenEvent.MOTION_FINISH| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示 Tween 已到达结尾并已完成。
事件对象的属性有下列值:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 属性的值。 |
target | 调度该事件的对象;它不一定是侦听该事件的对象。使用 currentTarget 属性始终可以访问侦听该事件的对象。 |
time | 事件发生时的 Tween 时间。 |
position | 当事件发生时,由 Tween 控制的属性的值。 |
motionLoop | 事件 |
fl.transitions.TweenEvent属性 TweenEvent.type =
fl.transitions.TweenEvent.MOTION_LOOP| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示 Tween 在循环模式中已从头开始重新播放。
事件对象的属性有下列值:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 属性的值。 |
target | 调度该事件的对象;它不一定是侦听该事件的对象。使用 currentTarget 属性始终可以访问侦听该事件的对象。 |
time | 事件发生时的 Tween 时间。 |
position | 当事件发生时,由 Tween 控制的属性的值。 |
motionResume | 事件 |
fl.transitions.TweenEvent属性 TweenEvent.type =
fl.transitions.TweenEvent.MOTION_RESUME| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示 Tween 在暂停后继续播放。
事件对象的属性有下列值:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 属性的值。 |
target | 调度该事件的对象;它不一定是侦听该事件的对象。使用 currentTarget 属性始终可以访问侦听该事件的对象。 |
time | 事件发生时的 Tween 时间。 |
position | 当事件发生时,由 Tween 控制的属性的值。 |
motionStart | 事件 |
fl.transitions.TweenEvent属性 TweenEvent.type =
fl.transitions.TweenEvent.MOTION_START| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示动画已经开始播放。
事件对象的属性有下列值:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 属性的值。 |
target | 调度该事件的对象;它不一定是侦听该事件的对象。使用 currentTarget 属性始终可以访问侦听该事件的对象。 |
time | 事件发生时的 Tween 时间。 |
position | 当事件发生时,由 Tween 控制的属性的值。 |
motionStop | 事件 |
fl.transitions.TweenEvent属性 TweenEvent.type =
fl.transitions.TweenEvent.MOTION_STOP| 语言版本: | ActionScript 3.0 |
| 产品版本: | Flash CS3 |
| 运行时版本: | Flash Player 9, AIR 1.0 |
指示由于显式调用
Tween.stop(),Tween 已停止。
事件对象的属性有下列值:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 属性的值。 |
target | 调度该事件的对象;它不一定是侦听该事件的对象。使用 currentTarget 属性始终可以访问侦听该事件的对象。 |
time | 事件发生时的 Tween 时间。 |
position | 当事件发生时,由 Tween 控制的属性的值。 |
userNumber 中,然后作为形状宽度的参数传递给 Tween 构造函数。
注意:对于 fl.transitions 包中的类,需要使用 import 语句,即使在 Flash Professional 中的“动作”面板中,也是如此。(对于大多数类,不需要在“动作”面板中使用 import 语句。)在包级别使用 * 来包括包中的所有类,或单独导入每个类。
import fl.transitions.Tween;
import fl.transitions.easing.*;
//create a Sprite instance
var mySprite:Sprite = new Sprite()
// create an input text field
var myTextField:TextField = new TextField();
myTextField.type = TextFieldType.INPUT;
myTextField.width = 180;
myTextField.height = 20;
myTextField.x = 20;
myTextField.y = 140;
myTextField.border = true;
myTextField.text = "Type a number here and press Enter";
myTextField.restrict = "0-9";
addChild(myTextField);
// add a listener when the user clicks in the text field
myTextField.addEventListener(MouseEvent.CLICK, fieldClickHandler);
// add a listener for a key press
myTextField.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
// clear the text field when the user clicks in it to enter a value
function fieldClickHandler(event:MouseEvent):void {
myTextField.text = "";
}
// if the key pressed is the Enter key
// change the values of the box's width based on the value provided
function keyDownHandler(event:KeyboardEvent):void {
if (event.keyCode == Keyboard.ENTER) {
mySprite.graphics.clear();
var userNumber:Number = new Number(myTextField.text);
mySprite.graphics.beginFill(0x666999);
mySprite.graphics.drawRect(0, 0, 40, 120);
addChild(mySprite);
//provide tween values, including passing the variable userNumber for the width at
//the end of the tween
var myTween:Tween = new Tween(mySprite, "width", Elastic.easeOut, 0, userNumber, 4, true);
}
}
import fl.transitions.Tween;
import fl.transitions.easing.*;
//create a Sprite instance
var mySprite:Sprite = new Sprite()
// create an input text field
var myTextField:TextField = new TextField();
myTextField.type = TextFieldType.INPUT;
myTextField.width = 180;
myTextField.height = 20;
myTextField.x = 20;
myTextField.y = 140;
myTextField.border = true;
myTextField.text = "Type a number here and press Enter";
myTextField.restrict = "0-9";
addChild(myTextField);
// add a listener when the user clicks in the text field
myTextField.addEventListener(MouseEvent.CLICK, fieldClickHandler);
// add a listener for a key press
myTextField.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
// clear the text field when the user clicks in it to enter a value
function fieldClickHandler(event:MouseEvent):void {
myTextField.text = "";
}
// if the key pressed is the Enter key
// change the values of the box's width based on the value provided
function keyDownHandler(event:KeyboardEvent):void {
if (event.keyCode == Keyboard.ENTER) {
mySprite.graphics.clear();
var userNumber:Number = new Number(myTextField.text);
// Set up drawing data
// stroke object
var myStroke:GraphicsStroke = new GraphicsStroke(2);
myStroke.joints = JointStyle.MITER;
myStroke.fill = new GraphicsSolidFill(0x102020); // solid stroke
// fill object
var myFill:GraphicsGradientFill = new GraphicsGradientFill();
myFill.colors = [0xEEFFEE, 0x0000FF];
myFill.matrix = new Matrix();
myFill.matrix.createGradientBox(300, 300, 0);
// path object
var myPath:GraphicsPath = new GraphicsPath(new Vector.<int>(), new Vector.<Number>());
myPath.commands.push(1,2,2,2,2);
myPath.data.push(0,0, 240,0, 240,60, 0,60, 0,0);
// combine the objects for a complete drawing
var myDrawing:Vector.<IGraphicsData> = new Vector.<IGraphicsData>();
myDrawing.push(myStroke, myFill, myPath);
// render the drawing
mySprite.graphics.drawGraphicsData(myDrawing);
addChild(mySprite);
//provide tween values, including passing the variable userNumber for the width at
//the end of the tween
var myTween:Tween = new Tween(mySprite, "width", Elastic.easeOut, 0, userNumber, 4, true);
}
}
Tue Jun 12 2018, 11:04 AM Z
隐藏继承的公共属性
显示继承的公共属性