tvos 应用程序是否需要约束?

Is Constraints necessary for tvos app?

我是 Apple TV 应用程序开发的新手。我在故事板上设计了几个视图,这在 Apple TV 模拟器上看起来不错,但是当我在 HDMI 显示器和实际电视上 运行 时,一些控件的边缘被切割了。

我想知道,是否需要约束来管理 UI 不同尺寸的电视?如果没有,Apple 有没有引入任何标准来管理这部分?

约束不是强制性的,但可以为您省去很多麻烦。此外,实际上约束(自动布局)是 Apple 希望开发人员针对不同分辨率管理应用程序的方式。

看看:https://developer.apple.com/library/tvos/documentation/AppKit/Reference/NSLayoutConstraint_Class/index.html

如果您不熟悉约束,我还发现本教程很有帮助:http://code.tutsplus.com/tutorials/an-introduction-to-tvos-development--cms-24848

自动布局对于任何类型的开发都不是强制性的,无论是 ios、tvos 还是 watchos。我们在 file inspector 中有选项可以禁用自动布局,这意味着没有必要。但是如果你使用自动布局,它会让你的任务变得太容易了。

不使用自动布局确实假设您的应用永远不会 运行 在任何其他分辨率下,但更重要的是,自动布局在处理整体屏幕尺寸以外的事情时非常有用,例如作为文本和按钮等的本地化

如果您使用自动布局,那么它可以帮助您在未来发布不同屏幕尺寸的电视。

希望这会有所帮助:)

推荐使用自动布局,但不是必需的。但是,这很有可能不是您的问题。如果您正在开发 tvOS 应用程序,请注意您需要使用一个安全区域。许多电视(包括一些新的高清电视)会切掉屏幕的边缘(这称为过扫描)。安全区域是屏幕中央的部分,您应该确保所有重要内容都在其中。

因此,对于 tvOS 应用程序,您应该将视图设置为 1920x1080 的尺寸,但将所有重要内容、按钮、文本等保留在 1740x960 的中心区域内。这会在两侧留下 90px 的边框,在顶部和底部留下 60px 的边框。那些边框当然应该还有不重要的信息,比如你的背景图片等

详情请看这里:https://developer.apple.com/tvos/human-interface-guidelines/visual-design/#layout