2016-01-31 1 views
1

J'ai un sprite dont j'ai besoin pour détecter si une touche a été faite dans ses limites. Habituellement, simplement en utilisant le code ci-dessous fonctionne, mais mon sprite actuel a des enfants qui sont en dehors des limites de l'image-objet. Pour cette raison, mes touches sont détectées en dehors des limites parentales car il semble que les limites de l'esprit comprennent celle des enfants. Est-ce que quelqu'un sait comment détecter si un contact est fait sur le parent seulement (pas les enfants aussi)?Détecter si le toucher est dans les limites du sprite, mais ignorer les enfants

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 

    let touch = touches.first as UITouch! 
    var touchLocation = touch.locationInNode(self) 

    if mySprite.containsPoint(touchLocation) { 

     // Do Something 

    } 

} 

Répondre

1

Essayez de vérifier si touchLocation est dans le cadre de mySprite avec quelque chose comme ceci:

if CGRectContainsPoint(mySprite.frame, touchLocation) { 
    // Do something 
} 
+0

Merci sœur! C'est exactement ce que je cherchais, fonctionne parfaitement. – Jarron