10.cocos2dx C++为Sprite添加触摸事件监听器
2018-01-25 11:58
405 查看
1.首先头文件定义事件处理的函数原型
[b]2.实现原型[/b]
3.绑定事件
1 private: 2 bool onTouchBegan(Touch* tTouch,Event* eEvent);//手指按下事件 3 void onTouchMoved(Touch* tTouch,Event* eEvent);//手指移动事件 4 void onTouchEnded(Touch* tTouch,Event* eEvent);//手指离开事件
[b]2.实现原型[/b]
1 bool ShopItem::onTouchBegan(Touch* tTouch,Event* eEvent){ 2 if (sprite->getBoundingBox().containsPoint(tTouch->getLocation())){//判断触摸点是否在目标的范围内 3 4 /**这里为事件内容**/ 5 return true; 6 }else 7 return false; 8 } 9 } 10 11 void ShopItem::onTouchMoved(Touch* tTouch,Event* eEvent){ 12 /**这里为事件内容**/ 13 } 14 15 void ShopItem::onTouchEnded(Touch* tTouch,Event* eEvent){ 16 /**这里为事件内容**/ 17 }
3.绑定事件
1 auto listener = EventListenerTouchOneByOne::create(); 2 listener->onTouchBegan = CC_CALLBACK_2(ShopItem::onTouchBegan, this); 3 listener->onTouchMoved = CC_CALLBACK_2(ShopItem::onTouchMoved, this); 4 listener->onTouchEnded = CC_CALLBACK_2(ShopItem::onTouchEnded, this); 5 this->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener, sprite);
相关文章推荐
- cocos2dx C++为Sprite添加触摸事件监听器
- cocos2dx为Sprite添加触摸事件监听器
- cocos2dx触摸事件的添加问题,触摸事件不起作用
- cocos2dx beta 中添加触摸事件
- cocos2d-html5学习之三-为sprite添加触摸事件
- cocos2d-html5学习之三-为sprite添加触摸事件
- cocos2d-x之为label添加事件监听器,单点触摸
- cocos2d JS touch(触摸监听)-快速添加事件监听器到管理器
- 学习笔记--cocos2dx-3.0中LabelTTF添加触摸监听事件
- cocos2d-html5学习之三-为sprite添加触摸事件
- cocos2dx C++工程添加lua支持
- 为Quick-Cocos2dx-2.26添加C++函数供Lua调用
- quick-cocos2d-x游戏开发【10】——触摸捕获事件 cc.NODE_TOUCH_CAPTURE_EVENT
- vue_4.添加一个事件监听器
- Android自定义控件系列 十:利用添加自定义布局来搞定触摸事件的分发,解决组合界面中特定控件响应特定方向的事件
- UE4:c++中添加触发器事件
- 给Layer添加触摸事件
- Creator 添加触摸,鼠标,键盘事件方法
- cocos2dx-lua_添加c++自定义函数
- WebSocket添加事件监听器(6)