Ios6 重叠的ccsprites不响应触摸事件,尽管z顺序更大

Ios6 重叠的ccsprites不响应触摸事件,尽管z顺序更大,ios6,cocos2d-iphone,ccsprite,overlapping,Ios6,Cocos2d Iphone,Ccsprite,Overlapping,CCBigSprite和CCSmallSprite类继承自CCSprite。 spr1、spr2是它们的实例。 从协议CCTargetedTouchDelegate重写的所有ccTouchesStart、ccTouchesMove、ccTouchesEnd方法 两个班都有 问题:在正常情况下,触摸事件按预期工作,适用于任何精灵实例, 直到精灵重叠。 如果触摸(CCSmallSprite*spr2),则触摸事件适用于(CCBigSprite*spr1) 因为此处存在重叠问题,且精确位置如图所示。

CCBigSprite和CCSmallSprite类继承自CCSprite。
spr1、spr2是它们的实例。

从协议CCTargetedTouchDelegate重写的所有ccTouchesStart、ccTouchesMove、ccTouchesEnd方法 两个班都有

问题:在正常情况下,触摸事件按预期工作,适用于任何精灵实例, 直到精灵重叠。
如果触摸(CCSmallSprite*spr2),则触摸事件适用于(CCBigSprite*spr1)

因为此处存在重叠问题,且精确位置如图所示。
当我按下spr2时,它的触摸事件应该可以工作,而不是sp1。

我如何解决这个致命的问题

这两个类具有相同的重写方法:

-(void)onEnter {
    [super onEnter];
    [[[CCDirector sharedDirector]touchDispatcher]addTargetedDelegate:self
priority:self.touchPriority swallowsTouches:YES];
}
这有意义吗

另外:
设置优先级没有改变任何事情

我正在手动更改。

[spr2 setTouchPriority:1];[spr1 setTouchPriority:2]//低意味着最高优先级 反之亦然。 没有帮助


这应该是cocos2d iphone 2.0稳定版问题?

绘图顺序不会影响触摸事件的顺序


如果点击上图中的小精灵,则只有精灵在CCTouchDispatcher中注册的顺序决定小精灵还是大精灵接收第一次触摸事件。

燕子触摸:无工作。这很奇怪。如果是的话,它应该会起作用。但是不工作-(void)onEnter{[super onEnter];[[CCDirector sharedDirector]touchDispatcher]addTargetedElegate:self-priority:self.touchPriority吞咽接触:NO];}