tvOS 的 UITabBarController 中视图控制器的最大数量是多少

Posted

技术标签:

【中文标题】tvOS 的 UITabBarController 中视图控制器的最大数量是多少【英文标题】:What is the maximum number of view controllers in UITabBarController for tvOS 【发布时间】:2017-11-08 18:18:34 【问题描述】:

UITabBarController for tvOS 中视图控制器的最大数量是多少? developer.apple.com 上没有记录。

屏幕明显比 ios 设备大。我知道对于 iOS,如果数字大于 5,它会添加一个“更多”按钮。

更多导航控制器标签栏的空间有限 显示您的自定义项目。如果添加六个或更多自定义视图 控制器到标签栏控制器,标签栏控制器显示 只有前四个项目加上标签栏上的标准更多项目。 点击更多项目会弹出一个标准界面,用于选择 剩余物品。标准更多项目的界面包括一个 允许用户重新配置选项卡栏的编辑按钮。经过 默认情况下,允许用户重新排列选项卡栏上的所有项目。如果 您不希望用户修改某些项目,但是,您可以删除 数组中的适当视图控制器 可定制的ViewControllers 属性。

注意

标签栏自定义和 更多界面在 tvOS 中不可用

tvOS 的差异

标签栏控制器在 tvOS 中的用途与在 iOS 中相同,但 提供略有不同的用户界面功能:标签栏 界面出现在窗口顶部。当焦点离开选项卡时 bar,标签栏是隐藏的。在遥控器上向上滑动会显示标签栏 再次聚焦它。用户还可以通过以下方式显示和聚焦标签栏 按菜单按钮。从标签栏向下滑动可移动焦点 进入内容视图;具体来说,对于第一个可聚焦的视图, 视觉上位于所选选项卡下方。向下滑动就像正常的一样 焦点改变手势——即焦点向用户的方向移动 刷卡。如果在所选选项卡正下方没有可聚焦的内容, 取而代之的是最近的可聚焦视图。按下选择 选项卡聚焦时的按钮将焦点移动到内容视图中。 因为没有与此更改相关的方向,所以焦点移动 到内容视图的preferredFocusedView 中指定的视图 财产。 tvOS 中的标签栏控制器不支持自定义。一种 标签栏控制器仅显示视图控制器的数量 它的 viewControllers 数组适合屏幕,并且不提供 iOS 中的 More 界面。

【问题讨论】:

【参考方案1】:

我通过在 StoryBoard 中添加 ViewControllers 找到了它。不管你的按钮有多小,答案都是 7。如果超过 7 ViewController,它将隐藏。当然也没有“更多”按钮。我添加了一个 8 视图控制器,但它只显示 7(七)

答案是 7

很好,对吧?!

解决方案

遗憾的是,我编写了自己的 TabBarController :( 它不是 UITabBarController 的子类,而是 UIViewController。希望苹果能改变这一点(他们不会。)。应该取决于按钮的大小,并且可以自动计算每个具体案例。

最好的。

【讨论】:

我可以确认这仍然是 tvOS 13 的问题。刚刚添加了第八个 UIViewController 并且它从未显示。我可能不得不编写自己的 TabBar 或想出另一个解决方案! 感谢您告知 tvOS 13 @sebleclerc 你有没有机会绕过这个限制?不确定最佳解决方案... 很遗憾,我们无法绕过限制。是别人的课。我们不能直到他们希望我们改变这一点。最好的。 这就是我的想法……但不得不问。谢谢:)

以上是关于tvOS 的 UITabBarController 中视图控制器的最大数量是多少的主要内容,如果未能解决你的问题,请参考以下文章

搜索模板 tvOS

使用容器 ViewControllers 时如何管理焦点

tvOS:我们在哪里设置 tvOS 应用商店中显示的应用主题背景图像

tvOS - 支持 Firebase/Core?在 tvOS 应用程序中获取远程推送通知的任何其他方式?

tvOS 11 更新 UICollectionView 崩溃

归档 tvOS 应用