cocos2dx 单点触摸的简单使用
来源:互联网 发布:专卖店软件泰安 编辑:程序博客网 时间:2024/05/16 17:48
单点触摸
场景1:
某个精灵需要实现触摸事件,在触摸精灵时完成对应操作。
onEnter()和onExit()分别注册和移除触摸事件分发器
void Paddle::onEnter(){ CCDirector* pDirector = CCDirector::sharedDirector(); pDirector->getTouchDispatcher()->addTargetedDelegate(this,0, true); CCSprite::onEnter();}void Paddle::onExit(){ CCDirector* pDirector = CCDirector::sharedDirector(); pDirector->getTouchDispatcher()->removeDelegate(this); CCSprite::onExit();}
然后重写以下函数
virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);virtual bool ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);virtual bool ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);
具体可以参看TestCpp中Paddle类的设计。
场景2:
父Layer接受触摸事件,调动其child完成对应操作。
个人觉得这个场景是使用较多的情况。
onEnter()和onExit()分别注册和移除触摸事件分发器。
void DatiScene::onEnter(){ CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this,0, true); CCLayer::onEnter();}void DatiScene::onExit(){ CCDirector::sharedDirector()->getTouchDispatcher()->removeDelegate(this); CCLayer::onEnter();}
然后重写以下函数
virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);virtual bool ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);virtual bool ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);
在实现ccTouchBegan的时候可以判断需要触发哪些精灵的操作。具体我就不讲了,感觉这种方式,会比一个一个精灵去写触摸要高效得很多。
0 0
- cocos2dx 单点触摸的简单使用
- cocos2dx 单点触摸,按钮事件
- 关于cocos2dx多点触摸和单点触摸
- 寒風的Cocos2dx之旅之单点触摸
- cocos2dx学习之路----第九篇(深入理解单点触摸的事件机制)
- 单点触摸和多点触摸的使用方法
- cocos2dx中使用触摸事件
- cocos2dx触屏响应(单点触摸)CCTouchBegan,CCTouchMove,CCTouchEnd
- 【cocos2dx学习笔记】单点触摸和音乐播放
- cocos2dx 3.0的触摸机制
- cocos2dx 触摸吞噬的实现
- 5.触摸touch,单点触摸,多点触摸,触摸优先和触摸事件的吞噬
- 单点触摸
- Cocos2d-X3.0中使用单点触摸
- 4------关于在Cocos2dx中注册触摸事件——Lua(单点触摸)
- cocos2dx学习之路----第八篇(初识触摸机制中的单点触摸)
- Cocos2d触摸:单点触摸
- 使用NSURLConnection实现简单的单点下载
- 使用testFlight进行企业部署
- 蓝牙4.0协议编程之回调函数
- Java中WebService实例
- GRE写作必备句型
- Oracle与MySQL的转化差异
- cocos2dx 单点触摸的简单使用
- 开源日志系统比较
- Project Euler:Problem 61 Cyclical figurate numbers
- Adb 的使用
- 驱动之module_init/module_exit
- Android -- 使用Fragment
- C++类内存分布
- List和ArrayList的区别
- JVM --并发垃圾回收器CMS