cocos2dx-触摸事件
2016-01-01 15:51
323 查看
//创建一个精灵 Sprite *spriteTest = Sprite::create("1.png"); spriteTest->setPosition(Point(100,100)); this->addChild(spriteTest); //创建一个单点触摸事件监听 auto listener = EventListenerTouchOneByOne::create(); //向下传递触摸 listener->setSwallowTouches(true); //触摸回调 listener->onTouchBegan = [](Touch *touch,Event *event) { auto target = event->getCurrentTarget(); Point locationInNode = target->convertToNodeSpace(touch->getLocation()); Size size = target->getContentSize(); Rect rect = Rect(0, 0, size.width, size.height); if (rect.containsPoint(locationInNode)) { CCLOG("sprite began... x = %f, y = %f", locationInNode.x, locationInNode.y); target->setOpacity(180); return true; } return false; }; listener->onTouchMoved = [](Touch *touch,Event *event) { auto target = event->getCurrentTarget(); target->setPosition(target->getPosition()+touch->getDelta()); }; listener->onTouchEnded = [](Touch *touch,Event *event) { auto target = event->getCurrentTarget(); target->setOpacity(255); }; _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, spriteTest);
相关文章推荐
- cocos2d-x frameworks 和 cocos引擎的关系
- cocos2d-x CCNode类
- 通过ccb(CocosBuilder)文件生成cocos2dx代码
- cocos2d-x学习笔记【一】创建自己的场景类
- Cocos2dx 3.0 简单的动作类
- cocos2d-x 3.9 异步动态加载
- cocostduio Text 控件 添加监听无法响应
- Cocos Studio及ListView使用简介
- Cocosd使用骨骼动画Spine
- Cocos2d中动作详解
- 快速入门Spine
- COCOS学习笔记--自定义绘制
- cocos2d-x缺少Default-568h@2x.png导致iPhone app 上下黑白的解决办法
- cocos2d-x Jnihelper类的使用
- quick-cocos2dx实现弹窗背景虚化
- cocos2d-x调用摄像头和相册并裁减图片
- cocos2d-x调用摄像头和相册并裁减图片
- cocos2dx内嵌gamecenter时的解决方案
- cocosjs+ccs在iphone6上花屏进展
- cocos run -p android 无法真机调试