首页 > 其他 > 详细

cocos2d-x之触摸目标的判断

时间:2015-03-29 09:23:08      阅读:290      评论:0      收藏:0      [点我收藏+]

cocos2d-x之触摸目标的判断

 

需要在触摸事件的内部添加判断目标的代码

 

 1 //EventListenerTouchOneByOne表示一个接一个的触发,每次触摸只能监听到一个触摸点
 2     auto listener = EventListenerTouchOneByOne::create();
 3     //onTouchBegan表示开始触摸的事件
 4     listener->onTouchBegan = [](Touch *t, Event *e){
 5         //通过事件e来获取到当前的事件的目标,然后获取到目标的边界区域
 6         //e->getCurrentTarget()->getBoundingBox()
 7         //然后判断是否包括一个点,就是触摸点:.containsPoint()
 8         //获取到触摸的位置t->getLocation()
 9         //此时事件的目标即node的边界区域包括了当前的触摸点,说明所触摸的就是当前的对象
10         if (e->getCurrentTarget()->getBoundingBox().containsPoint(t->getLocation())){
11             log("onTouchBegan!");
12         }
13         
14         return false;
15     };
16     //getEventDispatcher获取事件的派发器,
17     //addEventListenerWithSceneGraphPriority(事件, 节点);添加事件监听器
18     Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener, label);

 

cocos2d-x之触摸目标的判断

原文:http://www.cnblogs.com/dudu580231/p/4375222.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!