互联网上有几篇帖子询问如何正确组合SpriteKit和Storyboard / Interface构建器。特别是没有人能够从SKscene移动到期望的UIViewController。网上的解决方案没有真正解决这个问题!这真的不可能吗?如果是这样,那将是SpriteKit的重大限制......
答案 0 :(得分:3)
您无法直接从SKScene
移至另一个UIViewController
。
但是,SKScene
中的UIViewController
已经包含。
您可以使用delegation
将方法调用从场景传递到其控制器。然后控制器可以移动到另一个视图控制器。
因此...
创建一个委托协议,其中包含类似...... - (void)transitionToOtherViewController;
将当前视图控制器设置为场景的委托。
self.scene.delegate = self;
当您想要移动到另一个视图控制器时。在场景中你会有类似......
[self.delegate transitionToOtherViewController];
然后在视图控制器中你有......
- (void)transitionToOtherViewController
{
MyOtherViewController *controller = [MyOtherViewController new];
[self.navigationController pushViewController:controller animated:YES];
}
或类似的东西......