【问题标题】:tvOS, swift: how to restore default gesture recognizertvOS,swift:如何恢复默认手势识别器
【发布时间】:2025-12-28 15:50:13
【问题描述】:
我有 SpriteKit 2 SkViews。
第一个是菜单场景,第二个是游戏场景。
默认情况下,siri 遥控器的菜单按钮将用户发送回 Apple TV 主屏幕。
所以在我的第二个视图(游戏场景)中,我初始化了一个手势识别器以返回菜单场景。问题是当我回到菜单场景时,菜单按钮不再让我回到 Apple TV 主屏幕并停留在菜单场景中。
当我回到菜单场景时如何恢复菜单按钮的默认行为?
感谢您的帮助
【问题讨论】:
标签:
swift
button
menu
tvos
apple-tv
【解决方案1】:
返回菜单场景后,您应该移除或禁用手势识别器。如果用户返回游戏场景,您应该重新添加或重新启用该手势。
如果任何手势识别出菜单按钮,UIKit 不会让应用退出(因为它认为你正在处理菜单按钮,所以它不想干涉)即使你的处理程序没有做任何事情.
【解决方案2】:
当您返回主菜单场景时,请确保禁用手势识别器
在目标 C 中
myGestureRecognizer.enabled = NO;
在斯威夫特中
myGestureRecognizer.enabled = false
希望对你有帮助