【发布时间】:2014-02-22 17:03:14
【问题描述】:
我有一个类似于 UIButton 的节点和一个在触摸屏幕时执行操作的节点。 问题是狮子跳跃动作没有被触发。 另外:两个节点的名字都是正确的。
我的 UIEvent 代码:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInNode: self];
SKNode *node = [self nodeAtPoint:location];
UITouch *lionTouch = [touches anyObject];
CGPoint locationLion = [lionTouch locationInView:[self view]];
SKNode *lionNode = [self nodeAtPoint:locationLion];
if ([lionNode.name isEqualToString:@"veggieLion"]) {
if (!lionIsJumping) {
[self lionJump];
lionIsJumping = YES;
}
}
if ([node.name isEqualToString:@"repalyButton"]) {
// Button action
}
}
【问题讨论】:
-
您是否登录以查看任一节点是否满足 isEqualToString 条件?
-
是的。当我触摸附近的 lionNode 时它会触发。
-
你确定 lionIsJumping 是假的吗?您可以发布更多代码吗?布尔值设置为 false 的操作和位置
标签: ios objective-c uiview touch sprite-kit