《cocos2d-x游戏开发之旅》学习笔记(二)
来源:互联网 发布:iphone照片 mac导入 少 编辑:程序博客网 时间:2024/05/16 07:19
第5章
5.1.单点触摸的实现
效果:
常用的触摸事件有4个:
- onTouchBegan:触摸事件开始,也就是手指按下时
- onTouchMoveed:触摸移动事件,也就是手指在屏幕滑动的过程
- onTouchEnded:触摸事件结束,也就是手指松开时
- onTouchCancelled:打断触摸事件事件,一般是系统层级的消息,如手机来电,触摸事件就会被打断
t->getLocation():获取单击坐标,基于3D
t->getLocationInView():获取单击坐标,基于2D
Director::getInstance()->convertToGL(pt2):获取单击坐标,基于Cocos2d-x
_eventDispatcher是一个事件管理器,可以通过Director::getInstance()->getEventDispatcher()获得,是一个单例类
addEventListenerWithSceneGraphPriority函数的声明为:
void EventDispatcher::addEventListenerWithSceneGraphPriority(EventListener* listener, Node* node)
- EventListener*listener:事件监听对象,当触摸事件发生时通过它来回调
- Node*node:绑定的对象,当node对象被释放时,监听事件的注册也会被取消。当有多个触摸事件发生时(比如几个按钮叠加在一起),会根据node的层次优先回调(越在上面的对象越优先回调)
也可以用addEventListenerWithFixedPriority函数来注册监听事件,但需要手动指定触摸事件回调的优先级,并且需要手动取消监听事件。
5.2.单点触摸-截断事件
效果:
点击重叠部分:
关键的函数是setSwallowTouches,给它传递参数true,表示启动截断功能,也就是说可以决定是否要将触摸事件向下传递。
另外要注意的一点是注册监听事件时一个事件监听对象只能与一个目标对象绑定,否则运行会出错,可以使用clone函数来产生另一个事件监听对象。
还有,在onTouchBegan函数中,return true表示将触摸事件截断,return false表示不截断。
5.3.多点触摸
效果:
0 0
- 《cocos2d-x游戏开发之旅》学习笔记(二)
- 《Cocos2d-x游戏开发之旅》学习笔记(一)
- Cocos2d-x游戏开发之Lua学习笔记
- cocos2d-x手机游戏开发笔记(二)--坐标系
- cocos2d-x游戏开发之二
- vs2010 cocos2d-x 游戏开发之旅 二
- 【cocos2d-x游戏开发】 从零单排之(二)
- cocos2d-x游戏开发学习笔记
- Cocos2d-x游戏开发学习笔记
- cocos2d-x游戏开发实例(二)
- Cocos2d-X游戏开发(二)
- [ IOS-Cocos2d-x 游戏开发] - cocosBuilder 开发之二
- Cocos2d-x学习笔记之Cocos2d-x开发环境搭建
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十四课:Cocos2D-X物理引擎之Box2D1-7
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十五课:Cocos2D-X物理引擎之Box2D8-10
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十六课:Cocos2D-X物理引擎之Box2D11-12
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十七课:Cocos2D-X物理引擎之chipmunk
- 【iOS-cocos2d-X 游戏开发之二】【必看篇】总结阐述Cocos2d-X与Cocos2d-iphone区别;
- Spring MVC 的 研发之路 (二)
- uva10651(DP + 哈希)
- ANDROID 实现选择文件对话框
- uva 10651(dp + 哈希)
- c#表达式树Expression简单类型比较demo
- 《cocos2d-x游戏开发之旅》学习笔记(二)
- 第8周项目5:定期存款利息计算器
- 函数的指针
- C# WebBrowser控件禁用超链接转向、脚本错误提示、默认右键菜单和快捷键
- java 深入分析ClassLoader工作机制
- Cisco笔试——2014年
- 将Spring源码导入Spring Tool Suite/Eclipse
- c#动态构建代码树
- Ubuntu-Python2.7安装 scipy,numpy,matplotlib