如何在 Sprite 套件中为 touchesBegan 制作一个按钮

Posted

技术标签:

【中文标题】如何在 Sprite 套件中为 touchesBegan 制作一个按钮【英文标题】:how to make a button in Sprite kit for touchesBegan 【发布时间】:2016-02-05 00:00:40 【问题描述】:

现在基本上我得到了 TitleScene,我的游戏的名称在哪里,当点击屏幕上的任意位置时它会跳转到 GameScene,它看起来像这样:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 

SKScene *scene = [GameScene sceneWithSize:self.size];
SKTransition *transition = [SKTransition pushWithDirection:SKTransitionDirectionUp duration:1.0f];
[self.view presentScene:scene transition:transition];

我的问题是如何将此方法更改为按钮?

【问题讨论】:

【参考方案1】:

也许给你的精灵一个“按钮”的名字,这样你就知道你在触摸哪个

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
    /* Called when a touch begins */

    for (UITouch *touch in touches) 
        CGPoint location = [touch locationInNode:self];
        SKNode *touchedNode = [self nodeAtPoint:location];

        if (touchedNode && [touchedNode.name isEqual:@"button"]) 
            // your code here
        
    

【讨论】:

以上是关于如何在 Sprite 套件中为 touchesBegan 制作一个按钮的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Sprite 套件中的返回键上隐藏键盘?

如何在 iOS Sprite Kit 中裁剪两张图像并拼接成一张?

如何检测精灵套件中的碰撞?

Sprite 套件 CGPoint 未按预期工作

限制 Sprite 套件帧率

在 Sprite 套件中未检测到联系人