我正在 swift spritekit 中为 tvOS 开发游戏。有一个显示 SKScene B 的视图控制器 A。我将 pressesBegan 和 pressesEnded 从 A 转发到 B。
pressesBegan 在 A 中被调用并转发到 B,但在 A 中甚至没有调用 pressesBegan。我不明白为什么?
下面是A中实现的功能。
override func pressesEnded(presses: Set<UIPress>, withEvent event: UIPressesEvent?) {
if ((self.view as! SKView).scene?.isMemberOfClass(GameScene) == true){
let gameScene = (self.view as! SKView).scene as! GameScene
gameScene.pressesEnded(presses, withEvent: event)
}
}
override func pressesBegan(presses: Set<UIPress>, withEvent event: UIPressesEvent?) {
if ((self.view as! SKView).scene?.isMemberOfClass(GameScene) == true){
let gameScene = (self.view as! SKView).scene as! GameScene
gameScene.pressesBegan(presses, withEvent: event)
}
}