跳到主要内容

Node的节点事件

描述:

  节点可监听的事件的定义。 这只是一个演示记录,展示了信号插槽的名称和回调。

用法示例:

-- 可以使用如下示例代码注册监听这些事件:
node:slot("ActionEnd", function(action: Action, target: Node)
print("Action end", action, target)
end)

ActionEnd

类型: 节点事件。

描述:

  ActionEnd事件会在节点执行完一个动作时触发。 在node:runAction()node:perform()之后触发。

签名:

["ActionEnd"]: function(action: Action, target: Node)

参数:

参数名类型描述
actionAction执行完成的动作。
targetNode执行完成动作的节点。

TapFilter

类型: 节点事件。

描述:

  TapFilter事件在TapBegan插槽之前触发,可用于过滤某些点击事件。 在设置node.touchEnabled = true之后才会触发。

签名:

["TapFilter"]: function(touch: Touch)

参数:

参数名类型描述
touchTouch点击事件的消息对象。

TapBegan

类型: 节点事件。

描述:

  TapBegan事件在检测到点击时触发。 在设置node.touchEnabled = true之后才会触发。

签名:

["TapBegan"]: function(touch: Touch)

参数:

参数名类型描述
touchTouch点击事件的消息对象。

TapEnded

类型: 节点事件。

描述:

  TapEnded事件在点击结束时触发。 在设置node.touchEnabled = true之后才会触发。

签名:

["TapEnded"]: function(touch: Touch)

参数:

参数名类型描述
touchTouch点击事件的消息对象。

Tapped

类型: 节点事件。

描述:

  Tapped事件在检测到并结束点击时触发。 在设置node.touchEnabled = true之后才会触发。

签名:

["Tapped"]: function(touch: Touch)

参数:

参数名类型描述
touchTouch点击事件的消息对象。

TapMoved

类型: 节点事件。

描述:

  TapMoved事件在点击移动时触发。 在设置node.touchEnabled = true之后才会触发。

签名:

["TapMoved"]: function(touch: Touch)

参数:

参数名类型描述
touchTouch点击事件的消息对象。

MouseWheel

类型: 节点事件。

描述:

  MouseWheel事件在滚动鼠标滚轮时触发。 在设置node.touchEnabled = true之后才会触发。

签名:

["MouseWheel"]: function(delta: Vec2)

参数:

参数名类型描述
deltaVec2滚动的向量。

Gesture

类型: 节点事件。

描述:

  Gesture事件在识别到多点手势时触发。 在设置node.touchEnabled = true之后才会触发。

签名:

["Gesture"]: function(center: Vec2, numFingers: integer, deltaDist: number, deltaAngle: number)

参数:

参数名类型描述
centerVec2手势的中心点。
numFingersinteger手势涉及的触摸点数量。
deltaDistnumber手势移动的距离。
deltaAnglenumber手势的变动角度。

Enter

类型: 节点事件。

描述:

  当节点被添加到场景树中时,触发Enter事件。 当执行node:addChild()时触发。

签名:

["Enter"]: function()

Exit

类型: 节点事件。

描述:

  当节点从场景树中移除时,触发Exit事件。 当执行node:removeChild()时触发。

签名:

["Exit"]: function()

Cleanup

类型: 节点事件。

描述:

  当节点被清理时,触发Cleanup事件。 仅当执行parent:removeChild(node, true)时触发。

签名:

["Cleanup"]: function()

KeyDown

类型: 节点事件。

描述:

  当按下某个键盘按键时,触发KeyDown事件。 在设置node.keyboardEnabled = true后才会触发。

签名:

["KeyDown"]: function(keyName: Keyboard.KeyName)

参数:

参数名类型描述
keyNamestring被按下的键的名称。

KeyUp

类型: 节点事件。

描述:

  当释放某个键盘按键时,触发KeyUp事件。 在设置node.keyboardEnabled = true后才会触发。

签名:

["KeyUp"]: function(keyName: Keyboard.KeyName)

参数:

参数名类型描述
keyNamestring被释放的键的名称。

KeyPressed

类型: 节点事件。

描述:

  当持续按下某个键时,触发KeyPressed事件。 在设置node.keyboardEnabled = true后才会触发。

签名:

["KeyPressed"]: function(keyName: Keyboard.KeyName)

参数:

参数名类型描述
keyNamestring被持续按下的键的名称。

AttachIME

类型: 节点事件。

描述:

  当系统输入法(IME)开启到节点(调用node: attachIME())时,会触发AttachIME事件。

签名:

["AttachIME"]: function()

DetachIME

类型: 节点事件。

描述:

  当系统输入法(IME)关闭(调用node: detachIME()或手动关闭IME)时,会触发DetachIME事件。

签名:

["DetachIME"]: function()

TextInput

类型: 节点事件。

描述:

  当接收到系统输入法文本输入时,会触发TextInput事件。 在调用node:attachIME()之后触发。

签名:

["TextInput"]: function(text: string)

参数:

参数名类型描述
textstring输入的文本。

TextEditing

类型: 节点事件。

描述:

  当系统输入法文本正在被编辑时,会触发TextEditing事件。 在调用node:attachIME()之后触发。

签名:

["TextEditing"]: function(text: string, startPos: integer)

参数:

参数名类型描述
textstring正在编辑的文本。
startPosinteger正在编辑的文本的起始位置。

ButtonDown

类型: 节点事件。

描述:

  当游戏控制器按钮被按下时触发ButtonDown事件。 在设置node.controllerEnabled = true之后触发。

签名:

["ButtonDown"]: function(controllerId: integer, buttonName: Controller.ButtonName)

参数:

参数名类型描述
controllerIdinteger控制器ID,当有多个控制器连接时从0开始递增。
buttonNameKeyboard.KeyName被按下的按钮名称。

ButtonUp

类型: 节点事件。

描述:

  当游戏控制器按钮被释放时触发ButtonUp事件。 在设置node.controllerEnabled = true之后触发。

签名:

["ButtonUp"]: function(controllerId: integer, buttonName: Controller.ButtonName)

参数:

参数名类型描述
controllerIdinteger控制器ID,当有多个控制器连接时从0开始递增。
buttonNameKeyboard.KeyName被释放的按钮名称。

ButtonPressed

类型: 节点事件。

描述:

  当游戏控制器按钮被持续按下时触发ButtonPressed事件。 在设置node.controllerEnabled = true之后触发。

签名:

["ButtonPressed"]: function(controllerId: integer, buttonName: Controller.ButtonName)

参数:

参数名类型描述
controllerIdinteger控制器ID,当有多个控制器连接时从0开始递增。
buttonNameKeyboard.KeyName被按下的按钮名称。

Axis

类型: 节点事件。

描述:

  当游戏控制器轴发生变化时触发Axis事件。 在设置node.controllerEnabled = true之后触发。

签名:

["Axis"]: function(controllerId: integer, axisValue: number)

参数:

参数名类型描述
controllerIdinteger控制器ID,当有多个控制器连接时从0开始递增。
axisValuenumber控制器轴的值,范围从 -1.0 到 1.0。