cocos2d-x的触摸消息分发机制
来源:互联网 发布:吴天宇 网络歌手 编辑:程序博客网 时间:2024/05/09 01:41
cocos2d-x的消息分发和大部分的引擎有点区别,优点和缺点都很明显。
一般的分发思路都会和zorder有一定关系,同样屏幕位置的响应元素,离用户近的会屏蔽离用户远的元素的响应,即zorder值大的屏蔽zorder值小的。cocos2d-x则是由touch priority来决定的,这个和zorder是完全独立的两套体系。好处是可以比较灵活的调整响应元素的优先级,坏处是开发者需要自己控制各个响应元素的touch priority,需要做一些代码的处理以及前期的优先级规划。touch priority值越小,响应元素的响应优先级越高。这个和zorder刚好相反。
触摸消息分发还有个重要的方面就是消息响应后该触摸消息是不是就不会再传递下去,cocos2d-x中需要自己控制消息是否响应后是否会传递下去。
如果一个CCTouchDelegate被添加至CCTouchDispatcher时,如果设置bSwallowsTouches为true,则当该CCTouchDelegate所在响应元素的ccTouchBegan返回为true时,则触摸消息响应之后就会被吞掉。反之则能继续传递下去。
而且cocos2d-x的消息分发并不会看touch是否发生在响应元素的响应区域范围内与否,只根据priority顺序来传递。例如button无论多小,只要优先级够高,总能最早响应到touch消息。
这套机制我觉得还是做层简单的封装,touch响应优先级基于zorder,响应区域反应基于响应元素响应区域范围,是否吞掉消息则取决于元素本身。
- cocos2d-x的触摸消息分发机制
- Cocos2d-x 3.0 屏幕触摸及消息分发机制
- Cocos2d-x 3.0 屏幕触摸及消息分发机制
- Cocos2d-x 3.0 屏幕触摸及消息分发机制
- cocos2d-x 触摸事件的重新分发
- cocos2d-x 事件分发机制 ——触摸事件监听
- cocos2d-x 事件分发机制 ——触摸事件监听
- cocos2d-x 3.0 全新触摸检测与事件分发机制
- cocos2d-x 事件分发机制 ——触摸事件监听
- cocos2d-x 3.0 事件分发机制 —触摸事件监听
- cocos2d-x 3.0 触摸机制的使用
- cocos2d-x 3.0 触摸机制的使用
- cocos2d-x 3.0触摸机制的用法
- cocos2d-x 触摸消息响应
- cocos2d-x 触摸消息详解
- cocos2d-x触摸分发器原理
- Cocos2d-x触摸分发器原理
- cocos2d-x触摸分发器原理
- seajs学习(1)----什么是系统
- at命令使用详解
- 中文版SM3255AB/SM3257AA优盘量产工具v11.10.13.01
- Linux下的公式编辑器——libreoffice math 使用快速入门
- ios--Blocks与Dispatch Queue的使用
- cocos2d-x的触摸消息分发机制
- HDU3555
- Linux操作系统中的7功能详解
- 二维数组中的查找 九度Online Judge
- WHU1478----2014年武大邀请赛H题----双向链表
- The number of divisors(约数) about Humble Numbers
- ssh 简单安全策略
- Ubuntu - 修改root用户密码Ubuntu10.04
- Java内存泄露的理解与解决