Ios 是否将场景添加到UIViewController?
我刚刚在interface builder中创建了一个新的Ios 是否将场景添加到UIViewController?,ios,swift,uiviewcontroller,sprite-kit,skscene,Ios,Swift,Uiviewcontroller,Sprite Kit,Skscene,我刚刚在interface builder中创建了一个新的UIViewController。它从UITableViewController(单元格)分离。现在我想在这个UIViewController中使用SKScene。这是如何实现的 顺便说一句 如果SKScene占据了整个UIViewController.view可以在场景顶部覆盖UIKit对象吗 还是最好在UIViewController.view内创建一个单独的UIView来保存SKScene,然后围绕这个单独的UIView布局UIKi
UIViewController
。它从UITableViewController
(单元格)分离。现在我想在这个UIViewController
中使用SKScene
。这是如何实现的
顺便说一句
如果SKScene
占据了整个UIViewController.view
可以在场景顶部覆盖UIKit
对象吗
还是最好在
UIViewController.view
内创建一个单独的UIView
来保存SKScene
,然后围绕这个单独的UIView
布局UIKit
对象,并让默认的UIViewController.view
充当所有这些元素的容器?如果采用这种方法,理论上讲,SKScene
可以访问这些UIKit
对象吗 如果您创建一个新的Spritekit应用程序,它将为您所需的内容设置视图控制器。您只需将视图控制器复制到项目中,应用segue,就可以很好地使用skscene了
要回答您关于UIKit的问题,是的,您可以将UIKit元素放置在SKScene的顶部,它当然只会被攻击到SKScene所属的视图,因此场景本身无法直接与它们交互,您需要实现某种消息传递系统,以便两者可以通信
class MyScene: SKScene {
var someView: UIView
override func didMoveToView(view: SKView) {
someView = //setup view here
view.addSubview(someView)
}
}
然后在此场景中,您可以在任何地方访问UIKit对象。您可以在此处参阅我的教程博客: