Ich werde versuchen, dies so gut wie möglich zu erklären. Ich habe diesen Kreis, den ich drehen kann, wenn sich mein Finger auf dem Kreis bewegt. Das Problem, das ich habe, ist, dass, wenn ich den Kreis rotiere und ich meinen Finger außerhalb des Kreises bewege, die Rotation stoppt. Ich möchte, dass es immer noch die Berührung hat, auch wenn mein Finger außerhalb des Knotens ist. Es funktioniert, wenn ich in einem einzigen View-Controller bin, aber in Spritekit kann ich es nicht herausfinden.Wie bekomme ich meinen Knoten zu drehen, auch wenn mein Finger außerhalb des Knotens ist?
override func touchesMoved(touches: Set<UITouch>, withEvent event: UIEvent?) {
for touch in touches {
let location = touch.locationInNode(self)
let node = self.nodeAtPoint(location)
if node.name == "circle" {
let dy = circle.position.y - location.y
let dx = circle.position.x - location.x
let angle2 = atan2(dy, dx)
circle.zRotation = angle2
}
}
}
Sie haben aus "Kreis" bewegt, so 'lassen node = self.nodeAtPoint (location) 'gibt 'circle' also nicht zurück, wenn' node.name == "circle" 'false ist. – beyowulf
@beyowulf Ja, aber wüsstest du, wie ich das zur Arbeit bringen könnte? – coding22
In einem einzigen View-Controller-Projekt kann ich diesen Code verwenden und es funktioniert, aber in Spritekit wird der Kreis nicht rotieren: 'Let touch = touchs.first wenn touch! .view == circle {}' – coding22