UITabBarController
,并将多个UIViewControllers
用作标签。我还想在这个UITabBarController
中显示一个常量 UINavigationBar
,该导航栏将跨选项卡保持不变。由于UITabBarController
的所有子视图控制器都不是UINavigationControllers
,因此我希望这是可能的,而且不会引起冲突。有没有办法做到这一点?目前,我正在将完全相同的
UINavigationBar
和相应的逻辑复制粘贴到每个子视图控制器中,所以我猜肯定有更好的方法。就其有用性而言:想象一下包含两个
UIBarButtonItems
“注销”和“账户”的UINavigationBar
。按“注销”将注销您并推出模态视图控制器,以便您可以重新登录,而按“账户”将打开一个带有您的帐户信息的模态视图控制器。我在Stack Overflow上找到了这个现有的问题,但是问题本身和它的评论都措辞不当且信息匮乏:How to add a navigation bar to UITabBarController? 更新:
我感觉我可能没有解释清楚,所以我创建了一个图形来说明我想要做的事情。在下面的图像中,我有一个
UITabBarController
,它是用四个UIViewController
作为子级呈现的模态方式。我希望有一个恒定的UINavigationBar
,以便用户按下Done
来解除模态呈现的视图控制器。由于每个子视图控制器都是单个视图,因此似乎没有必要为了使UINavigationBar
出现而将每个子视图控制器嵌入其自己的UINavigationController
中。当前,在以模态方式呈现UITabBarController
时,不会出现导航栏。
UINavigationController
,而是只想要一个单独的UINavigationBar
。目前,如果我在界面构建器中将一个UINavigationBar
添加到UITabBarController
中,它根本不会显示出来。然而,我可以让每个选项卡连接到同一个UINavigationController
,并覆盖-[UITabBarController tabBarController:shouldSelectViewController:]
方法,以便它仅更新UINavigationController
的子视图,而不是完全替换它。 - Ken M. HaggertyUINavigationBar
拖放到Interface Builder中的UITabBarController
时,它是否已经为您工作了? - Ken M. Haggerty