我开始为 Apple TV 开发应用程序,但我在按钮上遇到了这个问题。我有一个屏幕,屏幕底部有几个按钮,然后有一个,位于中间(请参阅屏幕截图以了解)。问题是我无法专注于中间按钮。焦点仅在底部的三个按钮上。问题显然是由Y 位置引起的,当我移动屏幕底部的按钮时,它会聚焦。
按钮是在故事板中创建的,ViewController 中没有代码。故事板中中间按钮的设置与底部按钮的设置相同。我必须在代码中手动处理吗?或者甚至有可能像这样获得焦点移动?我将不胜感激任何信息,谢谢。
我仍在模拟器中开发。
所以我在苹果的指导下找到了解决方案。它需要使用 UIFocusGuide 进行一些编码。苹果为此提供了示例代码。
添加焦点指南以填补缺失的空间。
let focusGuide = UIFocusGuide()
view.addLayoutGuide(focusGuide)
focusGuide.widthAnchor.constraintEqualToAnchor(buttonThatIsFocused.widthAnchor).active = true
focusGuide.leftAnchor.constraintEqualToAnchor(buttonThatIsFocused.leftAnchor).active = true
focusGuide.heightAnchor.constraintEqualToAnchor(buttonTryingToFocus).active = true
focusGuide.preferredFocusedView = buttonTryingToFocus