Опитвам се да направя нещо доста просто в Cocos2d 3.1. Получавам събития за докосване на подклас на CCSprite и се опитвам да спра да получавам събития за докосване, когато докосването се изплъзне от спрайта с помощта на прост помощен метод containsTouchLocation
.
Това, което обаче не работи, е, че ако направя self.userInteractionEnabled = NO;
в метода touchMoved:
, той все още извиква touchMoved!
Това е моят пълен touchMoved: метод:
- (void)touchMoved:(UITouch *)touch withEvent:(UIEvent *)event {
self.userInteractionEnabled = NO;
int color = ([self containsTouchLocation:touch] ? 128 : 255);
self.color = [CCColor colorWithCcColor3b:ccc3(color, color, color)];
}
Защо, въпреки че очевидно се опитвам да изключа събитията на докосване в метода touchMoved, той все още го извиква?