event.phase

类型 字符串
事件 sprite
修订版 版本 2024.3703
关键字 sprite, phase

概述

一个表示 SpriteObject 动画当前所处阶段的字符串。

在 4 帧的精灵动画理论示例中,以下是可能的阶段帧场景

-- Loop twice
"began"   1
"next"    2
"next"    3
"next"    4
"loop"    1
"next"    2
"next"    3
"ended"   4

-- Loop indefinitely, no bounce (like above but no "ended" phase occurs)
"began"   1
"next"    2
"next"    3
"next"    4
"loop"    1
"next"    2
"next"    3
"next"    4
--etc.

-- Loop indefinitely, with bounce
"began"   1
"next"    2
"next"    3
"bounce"  4
"next"    3
"next"    2
"loop"    1
"next"    2
"next"    3
--etc.

-- Loop twice, with bounce
"began"   1
"next"    2
"next"    3
"bounce"  4
"next"    3
"next"    2
"loop"    1
"next"    2
"next"    3
"bounce"  4
"next"    3
"next"    2
"ended"   1

示例

-- Assumes "imageSheet" is already created via "graphics.newImageSheet()"

local sequenceData =
{
    name = "walking",
    start  =3,
    count = 6,
    time = 100,
    loopCount = 0,            -- Optional; default is 0 (loop indefinitely)
    loopDirection = "bounce"  -- Optional; values include "forward" or "bounce"
}

local character = display.newSprite( imageSheet, sequenceData )

local function spriteListener( event )
    print( event.name, event.target, event.phase, event.target.sequence )
end

-- Add sprite listener
character:addEventListener( "sprite", spriteListener )