在我的cocos2dx游戏中,我有一个包含另一个CCLayer的CCLayer。子层仅覆盖容器层的一部分。我想'我通过以下方式实现这一目标:
this->setContentSize( CCSizeMake( 100, 200 ) );
然而,子层总是捕捉触摸,即使它超出其大小和位置区域......这是常见的吗?
我可以通过在ccTouch * * 函数中进行比较来过滤触摸位置,但我认为这是一个黑客,设置子图层正确覆盖部分的正确方法是什么其父母的区域?
答案 0 :(得分:0)
我唯一能想到的就是让这个内层成为一个CCNODE,并使用CCTouchDelegate扩展它。 现在有了这个,当你用TouchDispatcher注册时,你要确保它不是Swallowtouches(作为最后一个参数给出的布尔值)...... 这样当你收到一个触摸...只是看它是否在这个内层的边界内,如果不是,发送让父类使用这个触摸。
希望这有帮助。