我需要在 iOS 应用程序中从 SpriteKit GameViewController 转换为常规视图控制器(Objective-C)

Posted

技术标签:

【中文标题】我需要在 iOS 应用程序中从 SpriteKit GameViewController 转换为常规视图控制器(Objective-C)【英文标题】:I need to transition from a SpriteKit GameViewController to a regular View Controller in an iOS app (Objective-C) 【发布时间】:2015-05-10 18:29:04 【问题描述】:

我正在使用 SpriteKit 在 Objective-C 中制作游戏,但也有一些视图控制器。我需要按一下按钮从 SpriteKit 场景转换到非 SpriteKit 视图控制器。该按钮只是由一个 SpriteKit 节点组成,可以使用以下代码按下:

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

    UITouch *touch = [touches anyObject];
    CGPoint location = [touch locationInNode:self];
    SKNode *node = [self nodeAtPoint:location];

    //if back button touched, show other view
    if ([node.name isEqualToString:@"backbutton"]) 
        //transition code goes here
    

现在,我不太确定要在判断是否按下后退按钮的 if 语句中放入什么内容。我不知道,虽然我试过this。任何帮助将不胜感激。

【问题讨论】:

有什么问题?您拥有的链接问答回答了您的问题。 @sangony 我不太确定,它只是不起作用。我设置了一切,当我点击按钮时,什么也没发生。我什至将 zposition 更改为 5 以确保它位于顶部。我只是认为这是另一个问题的答案。 【参考方案1】:

实际上,一种方法是使用 main.storyboard。您是否尝试过以这种方式设置两个视图控制器?如果这不起作用,请告诉我:

您实际上可以使用“Sprite Kit View Controller”和“View Controller”来适应您的游戏。使用情节提要设置场景转换按钮,并使用代码适应游戏的其余部分。按钮会卡在那里,所以把它放在一个好的地方。

只需在按钮和“视图控制器”之间设置一个过渡,就像在任何单一视图应用程序中一样。

【讨论】:

以上是关于我需要在 iOS 应用程序中从 SpriteKit GameViewController 转换为常规视图控制器(Objective-C)的主要内容,如果未能解决你的问题,请参考以下文章

在 SpriteKit/Swift 中从数组中删除元素

如何在 SpriteKit 中从 Web API 加载精灵表

如何使用 iOS 7 SpriteKit 粒子向非游戏的 iOS 应用程序添加粒子效果?

如何在 iOS 中从 .plist 添加和获取值

带有SpriteKit的iOS通用设备应用程序,如何为所有视图缩放节点?

使用 SpriteKit 和 iOS 7 保存高分