【问题标题】:Go from SKView back to UIView从 SKView 回到 UIView
【发布时间】:2014-01-18 19:05:06
【问题描述】:

我的项目有两个部分。第一部分是在情节提要中制作的,第二部分是 SKView。如何从 SKView 中的第二部分返回主 UIView?

【问题讨论】:

  • 你的意思是如何从一个故事板转到另一个故事板? developer.apple.com/library/ios/recipes/…
  • 感谢您对我的两个问题的帮助,也许您可​​以回答这个问题:您如何将 SKView 放在情节提要中,因为这看起来像您的建议?还是我误解了你?

标签: uiview sprite-kit


【解决方案1】:
  1. 创建自定义 ViewController:文件 - 新建 - 文件 - Objective-C 类。输入名称:GameSceneViewControllerUIViewController 的子类。

  2. 覆盖viewWillAppear 方法:

    -(void)viewWillAppear:(BOOL)animated {
        [super viewWillAppear:animated];
    
        GameScene *scene = [[GameScene alloc] initWithSize:self.view.bounds.size];
        scene.scaleMode = SKSceneScaleModeAspectFill;
    
        [self.skView presentScene:scene];
    }
    

    skView 属性将是 IBOutletSKView。还要确保你已经导入了 SpriteKit 框架:

    #import <SpriteKit/SpriteKit.h>
    
  3. 将新的ViewController 添加到情节提要。

  4. 在身份检查器中,为添加的 ViewController 输入一个自定义类:GameSceneViewController

  5. 将子视图添加到根视图:

  6. 在身份检查器中为添加的视图输入自定义类:SKView

  7. 为添加的SKView创建一个IBOutlet

现在您应该可以使用 segue 在 ViewController 之间切换

【讨论】:

  • 非常详细的问题,但是在尝试为添加的 SKView 创建 IBOutlet 时出现错误。据说“SKView”是一种未知类型。我必须导入一些东西还是我做的不正确?
  • 您需要在要创建 IBOutlet 的文件中 #import 。我已经编辑了我的答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-27
  • 1970-01-01
相关资源
最近更新 更多