1

我以编程方式构建了一个 UITabBarController 并填充了它的viewControllers属性。当我运行它时,tabBar 按钮当然是空的,我试图访问tabBarUITabBarController 上的属性以将其items属性设置为我的文本/图像,这导致应用程序崩溃。

浏览 UITabBarController 的文档,我在 tabBar 属性下阅读了这个:

与此控制器关联的选项卡栏视图。(只读)

@property(nonatomic,readonly) UITabBar *tabBar 讨论 您永远不应该尝试操作存储在此属性中的 UITabBar 对象本身。如果您尝试这样做,选项卡栏视图将引发异常。要为标签栏界面配置项目,您应该将一个或多个自定义视图控制器分配给 viewControllers 属性。标签栏从您指定的视图控制器中收集所需的标签栏项目。

此属性提供的选项卡栏视图仅适用于您希望使用 UIActionSheet 类的 showFromTabBar: 方法显示操作表的情况。

这就是我要的:

标签栏从您指定的视图控制器中收集所需的标签栏项目。

您不在一个地方设置 tabBar 而在另一个地方设置内容也很有意义。

但是如何在我的 viewControllers 中定义这些项目,这些项目都是 UINavigationController 类型,我的自定义 ViewController 作为 rootController?

除了我需要实现的 UITabBarControllerDelegate 之外,还有一些协议吗?

希望有人能指出我正确的方向,我没有看到这个:)谢谢

4

1 回答 1

1

通常,选项卡栏项目会填充您正在加载到其中的视图控制器的名称。

在你的情况下,你可以做一件事,

[tabbarContrller.tabBarItem initWithTitle:@"rafsfsa" image:[UIImage imageName:@"some.png" tag:0];

如果你得到这个,请回复。

于 2010-06-09T13:57:34.443 回答