以编程方式创建SKView?

时间:2015-04-15 19:43:41

标签: ios sprite-kit

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

到目前为止我尝试过:

  1. 我在 xcode 中创建了一个SpriteKit游戏项目。
  2. 删除了故事板文件。
  3. Info.plist
  4. 删除了sroryboard属性
  5. 将示例中的代码添加到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;
    }
    
  6. 将此代码添加到AppViewController

    -(void) loadView
    {
        self.view = [[SKView alloc] init];
    } 
    
  7. 应用程序启动但随后在创建第一个sprite时崩溃,并显示以下警告

      

    EXC_BAD_ACCESS

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

1 个答案:

答案 0 :(得分:3)

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

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

这是working example project in Swift