cocos2d-x 在按钮上点击怎么触发CClayer的触摸消息响应
例如在一个Layer上添加一个CCMenu,当在Menu以外的地方触摸屏幕,会触发ccTouchBegan等回调函数;但如果在Menu上点击,则只会响应Menu的回调函数...
例如在一个Layer上添加一个CCMenu,当在Menu以外的地方触摸屏幕,会触发ccTouchBegan等回调函数;但如果在Menu上点击,则只会响应Menu的回调函数,不会触发ccTouchBegan等回调函数。这怎么处理?求解。
展开
1个回答
展开全部
有两种解决办法,CCMenu本身就是继承于CCLayer,但是CCMenu再添加给CCTouchDispatcher添加delegate时把swallowsTouches设置为true,说明经过它的touch被吞氏册下,不会继续向下传递,你看看能不能从这方面下手去改改swallowsTouches的属液告性
还有就是你需要作一个CCMenu,作一个普通的CCSprite就可以,首先CCLayer先检测到touch时间,然后看看touch的点时候在CCSprite的歼埋宏范围内,如果在的话就说明CCSprite被点重,你先处理CCSprite点中的事件,再处理CCLayer的touch时间即可。
还有就是你需要作一个CCMenu,作一个普通的CCSprite就可以,首先CCLayer先检测到touch时间,然后看看touch的点时候在CCSprite的歼埋宏范围内,如果在的话就说明CCSprite被点重,你先处理CCSprite点中的事件,再处理CCLayer的touch时间即可。
网易云信
2023-12-06 广告
2023-12-06 广告
很高兴能回答您的问题。以下是一段针对“一对一消息组件”的描述,字数在200字左右:该组件支持用户之间的私密交流,让沟通更加直接和高效。通过它,您可以向特定对象发送消息,并实时查看消息状态,包括对方是否已读或未读。同时,该组件还支持富文本消息...
点击进入详情页
本回答由网易云信提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询