Spritekit SKNode在iOS8中始终为0

时间:2014-10-18 17:32:34

标签: ios objective-c ios8 sprite-kit xcode6

在iOS 7中创建一个按钮是Spritekit我们创建一个SKLabelNode,在TouchesBegan委托函数中,我们在触摸位置创建一个SKNode,并检查节点的名称是否等于预期的sklabelnode的名称。 但是在iOS 8中我们遇到了问题,我们使用相同的概念,但SKNode的位置始终为0! 那有什么不对?!

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
   for (UITouch *touch in touches)
   {
       CGPoint touchLocation = [touch locationInNode:self];
       SKNode *n = [self nodeAtPoint:touchLocation];
       NSLog(@"Node Position: %f, %f", n.position.x, n.position.y);
   }
}

1 个答案:

答案 0 :(得分:0)

通过改变这个来解决:

if (n != self && [n.name isEqual: @"restartLabel"])

到此:

if([restartLabel containsPoint:touchLocation])