我以编程方式构建了一个 UITabBarController 并填充了它的viewControllers
属性。当我运行它时,tabBar 按钮当然是空的,我试图访问tabBar
UITabBarController 上的属性以将其items
属性设置为我的文本/图像,这导致应用程序崩溃。
浏览 UITabBarController 的文档,我在 tabBar 属性下阅读了这个:
与此控制器关联的选项卡栏视图。(只读)
@property(nonatomic,readonly) UITabBar *tabBar 讨论 您永远不应该尝试操作存储在此属性中的 UITabBar 对象本身。如果您尝试这样做,选项卡栏视图将引发异常。要为标签栏界面配置项目,您应该将一个或多个自定义视图控制器分配给 viewControllers 属性。标签栏从您指定的视图控制器中收集所需的标签栏项目。
此属性提供的选项卡栏视图仅适用于您希望使用 UIActionSheet 类的 showFromTabBar: 方法显示操作表的情况。
这就是我要的:
标签栏从您指定的视图控制器中收集所需的标签栏项目。
您不在一个地方设置 tabBar 而在另一个地方设置内容也很有意义。
但是如何在我的 viewControllers 中定义这些项目,这些项目都是 UINavigationController 类型,我的自定义 ViewController 作为 rootController?
除了我需要实现的 UITabBarControllerDelegate 之外,还有一些协议吗?
希望有人能指出我正确的方向,我没有看到这个:)谢谢