Cocos Creator的生命周期和支持的系统事件

  • Post author:
  • Post category:其他




一、生命周期

onLoad() 组件初始化时执行

start() 第一次激活前执行

update() 每帧执行

onEnable() 组件启用时调用

onDisable() 组件禁用时调用

onDestroy 组件销毁时调用



二、支持的系统事件

Cocos Creator接收的系统事件有四种鼠标、触摸、键盘、重力传感。

鼠标事件和触摸事件,这些时间是被直接触发在相关节点上的,所以统称为节点系统事件;键盘和重力事件被称为全局系统事件。

1、鼠标事件类型:

cc.Node.EventType.MOUSE_DOWN:当鼠标在目标节点区域按下时触发一次

事件名:‘mousedown’

cc.Node.EventType.MOUSE_ENTER:当鼠标在目标节点区域按下时触发一次

事件名:‘mousemove’

cc.Node.EventType.MOUSE_LEAVE:当鼠标在目标节点区域按下时触发一次

事件名:‘mouseleave’

cc.Node.EventType.MOUSE_UP:当鼠标在目标节点区域按下时触发一次

事件名:‘mouseup’

cc.Node.EventType.MOUSE_WHEEL:当鼠标在目标节点区域按下时触发一次

事件名:‘mousewheel’

// 监听点击事件 onLoad里面
this.node.on("mousedown", this.onMouseDown, this)
// 取消监听 onDestroy里面
this.node.off("mousedown", this.onMouseDown, this)

2、触摸事件:

cc.Node.EventType.TOUCH_START:当手指触点露在目标节点区域时触发

事件名:‘touchstart’

cc.Node.EventType.TOUCH_MOVE:当手指在屏幕上目标点区域内移动时触发

事件名:‘touchmove’

cc.Node.EventType.TOUCH_END:当手指在目标节点区域内离开屏幕时触发

事件名:‘touchend’

cc.Node.EventType.TOUCH_CANCEL:当手指在目标节点区域外离开屏幕时触发

事件名:‘touchcancel’

// 监听触摸事件 onLoad里面
this.node.on('touchstart',this.onEventStart,this)
// 取消监听 onDestroy里面
this.node.off('touchstart',this.onEventStart,this)

3、键盘事件:

cc.SystemEvent.EventType.KEY_DOWN(键盘按下,一直触发)

cc.SystemEvent.EventType.KEY_UP(键盘释放,触发一次)

//监听键盘事件 onLoad里面
cc.systemEvent.on(cc.SystemEvent.EventType.KEY_DOWN, this.keyDownForMove, this)
// 取消监听 onDestroy里面
cc.systemEvent.off(cc.SystemEvent.EventType.KEY_DOWN, this.keyDownForMove, this)

4、重力传感事件:

cc.SystemEvent.EventType.DEVICEMOTION(设备重力传感)

// 开启重力传感 然后监听重力传感事件 onLoad里面
cc.systemEvent.setAccelerometerEnabled(true)
cc.systemEvent.on(cc.SystemEvent.EventType.DEVICEMOTION, this.onDeviceMotionEvent, this)
// 取消监听重力传感事件 onDestroy里面
cc.systemEvent.off(cc.SystemEvent.EventType.DEVICEMOTION, this.onDeviceMotionEvent, this)

学习记录一下,如有错误和不足欢迎各位大哥指正!



版权声明:本文为HCJVR原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。