COCOS2DX学习笔记--用户事件

本文介绍了COCOS2DX中的事件处理机制,包括事件、事件源、事件处理者和事件管理器的角色。详细讲解了事件监听器的注册与注销,如使用cc.EventManager管理事件监听器,并列举了触摸事件、键盘事件和鼠标事件的处理方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

事件处理机制中又三个角色:

  1. 事件:cc.Event
  2. 事件源:精灵、层、菜单等节点对象
  3. 事件处理者:监听器类cc.EventListener

事件管理器:

从命名上可以看出事件监听器与事件具有对应关系,例如,键盘事件只能由键盘事件监听器来处理,他们之间需要在程序中建立关系,这种建立关系的过程被称为“注册监听器”,Cocos2d-JS提供一个事件管理器cc.EventManager来管理这种关系。

具体地说,事件管理器负责注册监听器、注销监听器和事件分发。

cc.EventListener类中注册事件监听器的函数:addListener(listener,nodeOrPriority)

第一个参数listener是要注册的事件监听器对象,第二个参数nodeOrPriority可以是一个Node对象或一个数值。如果传入的是Node对象,则按照精灵等Node对象的显示优先级作为事件优先级。如果传入的是数值,则按照指定的级别作为事件优先级,事件优先级决定事件响应的优先级别,值越小,优先级越高。

当不再进行事件响应的时候,应该注销事件监听器。主要的注销函数如下:

  1. removeListener(listener):注销指定的事件监听器
  2. removeCustomListeners(customEventName):注销自定义事件监听器
  3. removeListeners(listenerType,recursive):注销所有特点类型的事件监听器,recursive表示是否递归注销
  4. removeAllEventListeners():注销所有事件监听器,需要注意的是,使用该函数之后,菜单也不能响应事件了,因为它也需要接受触摸事件。

触摸事件

  1. 时间方面:又不同的“按下”,“移动”,“抬起”等阶段。
  2. 事件监听器有两个,单点触摸和多点触摸。
  3. 空间方面:,每个触摸点对象包含了当前位置信息以及之前的位置信息。

键盘事件:

  1. 不仅可以响应键盘,还可以响应设备的菜单
  2. onKeyPressed:当键按下时回调该属性所指定的函数
  3. onKeyReleased:当键抬起时回调该属性所指定的函数

鼠标事件:

  1. onMouseDown:当鼠标按下时回调该属性所指定的函数
  2. onMouseMove:当鼠标移动时回调该属性所指定的函数
  3. onMoveUp:当鼠标抬起时回调该属性所指定的函数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值