Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios SKScene如何与其容器SKView通信?_Ios_Swift_Sprite Kit_Uikit - Fatal编程技术网

Ios SKScene如何与其容器SKView通信?

Ios SKScene如何与其容器SKView通信?,ios,swift,sprite-kit,uikit,Ios,Swift,Sprite Kit,Uikit,我有一个SKView中显示的SKScene。我想要一种将信息从场景发送到视图的方法,以便以后与控制器一起使用 例如,考虑将视图控制器作为 SkView < /C>的委托,并且 SkView 在其呈现的场景的某一部分被点击时,需要通知 UIViewController < /代码>。< /P> < P> SKScene < /代码>有一个方便的实例成员 .View < /C>。要访问标准的SKView方法和属性,您可以像这样使用它: self.view?.addGestureRecognizer

我有一个
SKView
中显示的
SKScene
。我想要一种将信息从场景发送到视图的方法,以便以后与控制器一起使用


例如,考虑将视图控制器作为<代码> SkView < /C>的委托,并且<代码> SkView <代码>在其呈现的场景的某一部分被点击时,需要通知<代码> UIViewController < /代码>。< /P> < P> <代码> SKScene < /代码>有一个方便的实例成员<代码> .View < /C>。要访问标准的

SKView
方法和属性,您可以像这样使用它:

self.view?.addGestureRecognizer(pinchGestureRecognizer)
如果包含视图是
SKView
子类,则可以向下转换
.view
以访问自定义方法:

if let myView = self.view as? MyCustomViewClass {
    myView.sceneWasTapped()
}

请记住,
.view
是可选的;如果场景尚未添加到视图中,则该值将为零。将场景添加到视图时,场景会调用didMove(to view:SKView),因此这是一个很好的地方,可以根据现有的
视图进行操作。

完美!非常感谢!