大家好,我是 TV OS App 开发的初学者。
如下图所示,我可以移动按钮,
按钮 1 -> 右箭头 -> 对焦按钮 2
我注意到,当向下移动(从 Button2 到 Button4)时,焦点项目框架应该在 Button2 和 Button6 的边界内。
我想在按下时将 Button1 移动到 Button 3。(Button3 不在 Button1 和 Button5 的边界内)
我该如何解决?
大家好,我是 TV OS App 开发的初学者。
如下图所示,我可以移动按钮,
按钮 1 -> 右箭头 -> 对焦按钮 2
我注意到,当向下移动(从 Button2 到 Button4)时,焦点项目框架应该在 Button2 和 Button6 的边界内。
我想在按下时将 Button1 移动到 Button 3。(Button3 不在 Button1 和 Button5 的边界内)
我该如何解决?
为此,您可以将 aUIFocusGuide
放在按钮 3 的左侧。(https://developer.apple.com/documentation/uikit/uifocusguide)
焦点指南是一个不可见的布局指南元素,它将“捕捉”焦点并将其重定向到您指定的任何视图。
编辑: 带有示例的完整文档
例子:
let focusGuide = UIFocusGuide()
view.addLayoutGuide(focusGuide)
focusGuide.leftAnchor.constraint(equalTo: view.leftAnchor).isActive = true
focusGuide.rightAnchor.constraint(equalTo: button3.rightAnchor).isActive = true
focusGuide.topAnchor.constraint(equalTo: button3.topAnchor).isActive = true
focusGuide.bottomAnchor.constraint(equalTo: button3.bottomAnchor).isActive = true
focusGuide.preferredFocusEnvironments = [button3]