以编程方式创建SKView?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以编程方式创建SKView?相关的知识,希望对你有一定的参考价值。

我喜欢我的代码是明确的所以我想删除storyboard文件并以编程方式创建SKView

到目前为止我尝试过的:

  1. 我在xcode中创建了一个SpriteKit游戏项目。
  2. 删除了故事板文件。
  3. Info.plist删除了sroryboard属性
  4. AppDelegate的示例中添加了此代码: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { _window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; AppViewController *viewController = [[AppViewController alloc] init]; viewController.edgesForExtendedLayout = UIRectEdgeNone; _window.rootViewController = viewController; [_window makeKeyAndVisible]; return YES; }
  5. 将此代码添加到AppViewController-(void) loadView { self.view = [[SKView alloc] init]; }

应用程序启动但随后在创建第一个sprite时崩溃,并显示以下警告

EXC_BAD_ACCESS

我认为应该有一些很好的例子说明如何做到这一点,但我还没有找到任何SpriteKit

答案

我通过在视图中设置框架来解决问题:

- (void) loadView
{
    self.view = [[SKView alloc] initWithFrame: [[UIScreen mainScreen] bounds]];
}

这是一个working example project in Swift

以上是关于以编程方式创建SKView?的主要内容,如果未能解决你的问题,请参考以下文章