transition.to()

类型 函数
transition.*
返回值 Table
版本 版本 2024.3703
关键字 缓动、动画、过渡、补间、插值
另请参阅 过渡 (指南)
缓动

概述

使用可选的 缓动 算法来显示对象的动画(过渡)。使用此方法可以在特定时间段内移动、旋转、淡入淡出或缩放对象。

此函数返回与对象 target 的转换/动画相对应的引用。

有关用法信息,请参阅 过渡 指南。

语法

transition.to( target, params )
target (必需的)

Table. 任何表现得像 table 的对象,例如 显示对象

params (必需的)

Table. 指定转换属性的表 — 有关详细信息,请参阅下一部分。

参数参考

params 表包含应插值的 target 的属性。

time (可选的)

Number. 指定以毫秒为单位的过渡持续时间。默认持续时间为 500 毫秒。

iterations (可选的)

Number. 指定过渡将重复的次数。默认迭代值为 1

tag (可选的)

String. 指定过渡标记。过渡库可以暂停、恢复或取消共享相同标记的过渡。

transition (可选的)

Function. 指定 缓动 插值方法。默认是线性。

delay (可选的)

Number. 指定过渡开始前的延迟(以毫秒为单位)。默认值为 0

delta (可选的)

Boolean. 指定非控制参数解释为最终结束值还是值变化。默认值为 false

onStart (可选的)

Listener. 在过渡开始之前要调用的监听器函数。此函数将接收到与相关对象关联的引用作为其唯一参数。

onComplete (可选的)

侦听器。完成转换后调用的侦听器函数。此函数将接受对关联对象的引用作为它的唯一参数。

onPause (可选的)

侦听器。暂停转换后调用的侦听器函数。此函数将接受对关联对象的引用作为它的唯一参数。

onResume (可选的)

侦听器。继续转换后调用的侦听器函数。此函数将接受对关联对象的引用作为它的唯一参数。

onCancel (可选的)

侦听器。取消转换后调用的侦听器函数。此函数将接受对关联对象的引用作为它的唯一参数。

onRepeat (可选的)

侦听器。转换完成重复周期中的一个迭代后调用的侦听器函数。此函数将接受对关联对象的引用作为它的唯一参数。

x (可选的)

数字。将目标从其当前 x 坐标移动到另一个。

y (可选的)

数字。将目标从其当前 y 坐标移动到另一个。

rotation (可选的)

数字。将目标从其当前角度旋转到另一个。

alpha (可选的)

数字。将目标从其当前 alpha 值淡化为另一个。

xScale (可选的)

数字。按特定 x 比例缩放目标。

yScale (可选的)

数字。按特定 y 比例缩放目标。

size (可选的)

数字。仅当目标是通过 display.newText() 创建的 文本对象 时应用。这会转换文本对象的字体大小。

width (可选的)

数字。将目标从其当前宽度调整为另一个。

height (可选的)

数字。将目标从其当前高度调整为另一个。

x1, y1, x2, y2, x3, y3, x4, y4 (可选的)

数字。仅当目标是适用于 形状对象RectPath 时应用。这些属性控制目标的四边形变形。

[filterParameter] (可选的)

数字。仅当目标是应用于 形状对象fill.effect 时适用。在这种情况下,[filterParameter] 表示与特定滤镜效果关联的效果属性,例如 ShapeObject.fill.effect.intensity。查阅 滤镜、生成器、合成 指南以了解哪些滤镜参数适用于每个滤镜。

示例

local square = display.newRect( 0, 0, 100, 100 )

local w,h = display.contentWidth, display.contentHeight

local function listener1( obj )
    print( "Transition 1 completed on object: " .. tostring( obj ) )
end
 
local function listener2( obj )
    print( "Transition 2 completed on object: " .. tostring( obj ) )
end
 
-- (1) move square to bottom right corner; subtract half side-length
transition.to( square, { time=1500, alpha=0, x=(w-50), y=(h-50), onComplete=listener1 } )
 
-- (2) fade square back in after 2.5 seconds
transition.to( square, { time=500, delay=2500, alpha=1.0, onComplete=listener2 } )