用于tvOS的UITabBarController中的最大视图控制器数是多少?它没有在developer.apple.com上记录。
屏幕明显比iOS设备大。我知道对于iOS,如果数字大于5,它将添加“更多”按钮。
更多导航控制器选项卡栏用于显示自定义项目的空间有限。如果向选项卡栏控制器添加六个或更多自定义视图控制器,则选项卡栏控制器仅显示前四个项目以及选项卡栏上的标准更多项目。点击更多项目会显示用于选择剩余项目的标准界面。标准更多项的界面包括一个“编辑”按钮,允许用户重新配置标签栏。默认情况下,允许用户重新排列选项卡栏上的所有项目。但是,如果您不希望用户修改某些项,则可以从customizableViewControllers属性中的数组中删除相应的视图控制器。
注意
标签栏自定义和更多界面在tvOS中不可用
tvOS的差异
标签栏控制器在tvOS中与iOS中的用途相同,但提供略有不同的用户界面功能:标签栏界面显示在窗口的顶部。当焦点离开标签栏时,标签栏将被隐藏。向上滑动遥控器再次显示标签栏并将其对焦。用户还可以通过按菜单按钮显示和聚焦标签栏。从标签栏向下滑动会将焦点移动到内容视图中;具体而言,在所选标签下方的第一个可聚焦视图下方。向下滑动的行为类似于正常的焦点改变手势 - 也就是说,焦点沿用户滑动的方向移动。如果在所选选项卡下方没有任何可聚焦的内容,则会聚焦最近的可聚焦视图。在选项卡聚焦时按“选择”按钮可将焦点移动到内容视图中。由于没有与此更改关联的方向,因此焦点移动到内容视图的preferredFocusedView属性中指定的视图。 tvOS中的标签栏控制器不支持自定义。标签栏控制器仅显示适合屏幕的viewControllers数组中的视图控制器数量,并且不提供iOS中看到的更多界面。
我通过在StoryBoard中添加ViewControllers找到了。无论你的按钮有多小,答案都是7.如果它超过7个ViewController,它将隐藏。当然没有“更多”按钮。我加了8它只显示7。
太好了吧?
我是如何解决它的
写了我自己的TabBarController。这不是UITabBarController的子类,而是UIViewController。希望Apple会改变这一点。应该取决于按钮的大小,并自动计算每个特定的情况。