【问题标题】:How to set the UITabBars items property when accessing through a UITabBarController?通过 UITabBarController 访问时如何设置 UITabBars 项目属性?
【发布时间】:2010-06-09 13:13:33
【问题描述】:

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

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

标签栏视图关联 用这个控制器。 (只读)

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

由此提供的标签栏视图 属性仅适用于以下情况 你想显示一个动作表 使用 showFromTabBar: 方法 UIActionSheet 类。

这就是我想要的:

标签栏收集需要的标签 来自视图控制器的栏项目 你指定。

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

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

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

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

【问题讨论】:

    标签: iphone uinavigationcontroller uitabbarcontroller uitabbar


    【解决方案1】:

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

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

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

    如果收到了请回复。

    【讨论】:

    • 嗨,谢谢...我确实觉得有点愚蠢,我开始构建 ViewControllers,当我做 [self.navigationController setTitle:@"String"] 按钮时,标题出现了。然后我做了 [self.navigationController setTabBarItem:myItem] ... 方法在那里,正如文档所说,我只是专注于 TabBarController。再次感谢。
    猜你喜欢
    • 2014-10-17
    • 1970-01-01
    • 2011-10-08
    • 2013-12-03
    • 1970-01-01
    • 1970-01-01
    • 2018-12-10
    • 2023-03-31
    • 2012-03-10
    相关资源
    最近更新 更多