我在SKScene
中显示了SKView
。我想要一种方法将信息从场景发送到视图,以便以后与控制器一起使用。
例如,考虑将视图控制器作为SKView
的委托,并且SKView
需要在点击其呈现的场景的某个部分时通知UIViewController
。 / p>
答案 0 :(得分:3)
SKScene
有一个方便的实例成员.view
。要访问标准SKView
方法和属性,您可以使用它:
self.view?.addGestureRecognizer(pinchGestureRecognizer)
如果您的包含视图是SKView
子类,则可以向下转换.view
以访问自定义方法:
if let myView = self.view as? MyCustomViewClass {
myView.sceneWasTapped()
}
请注意.view
是可选的;如果场景尚未添加到视图中,它将为零。当场景添加到视图中时,场景会调用didMove(to view: SKView)
,因此这是处理依赖.view
现有内容的好地方。