与标签栏控制器和标签栏有点混淆

Posted

技术标签:

【中文标题】与标签栏控制器和标签栏有点混淆【英文标题】:Little confusion with tab bar controller and tab bar 【发布时间】:2014-07-25 10:46:12 【问题描述】:

我想提供一个在3个视图控制器之间切换的机会。我不使用导航控制器。相反,我更喜欢标签栏。在xcode中我们有标签栏控制器和标签栏。提供独立的目的是什么标签栏对象?我的意思是当您拖动标签栏控制器时,它会创建控制器和 2 个项目,并且它们已经有了标签栏。这不意味着我可以在没有视图控制器的情况下使用它吗?

【问题讨论】:

【参考方案1】:

是的,UITabBar 是一个独立的预定义 UI 元素,您可以在任何地方使用。将它与UITabBarController 结合使用可以让您轻松处理与UITabBar 相关的事件,因为您不需要自己实现大部分逻辑。

【讨论】:

在哪里?我可以通过什么方式访问独立的标签栏? 喜欢在上面贴一个标签,然后在控制器 UITabBar 的某处调用 tabBar = (UITabBar)[self.view viewWithTag:tag]? 因为无法创建 IBOutlet【参考方案2】:

UITabBar 继承自 UIView,而 UITabBarController 继承自 UIViewController 并响应 UITabBarDelegate 和 NSCoding 协议。

此外,UITabBarController 提供自动机制和逻辑 - 另一个更灵活,以防您必须以不同方式实现。

【讨论】:

也不错,但我想听听他们可以独立存在

以上是关于与标签栏控制器和标签栏有点混淆的主要内容,如果未能解决你的问题,请参考以下文章

添加标签栏后导航下的搜索栏位置

以编程方式为 ViewController 创建标签栏

将标签栏控制器与导航控制器一起使用时出现问题

UINavigationController 在标签栏控制器之前和标签栏控制器之后?

iOS两个标签栏按钮与segue相同的navigationcontroller

旋转后隐藏的标签栏