gpt4 book ai didi

ios - tvOS 中的 pressesEnded 未被调用

转载 作者:行者123 更新时间:2023-12-01 15:50:57 24 4
gpt4 key购买 nike

我正在使用 swift spritekit 为 tvOS 开发游戏。有一个显示 SKScene B 的 View Controller A。我正在将 pressesBegan 和 pressesEnded 从 A 转发到 B。

pressesBegan 在 A 中被调用并转发给 B 但 pressesEnded 甚至没有在 A 中被调用。我不明白为什么?

下面是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)
}
}

最佳答案

我自己刚遇到这个。

我相信发生的事情是,如果您覆盖该方法:

- (void)pressesBegan:(NSSet<UIPress *> *)presses withEvent:(UIPressesEvent *)event

并且不要在某处的方法中调用 super:

[super pressesBegan:presses withEvent:event];

pressedEnded 也从未被调用。

我遇到过这样一种情况,有时会调用 pressesEnded,有时不会,这是我能发现的唯一区别。

关于ios - tvOS 中的 pressesEnded 未被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35578243/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com