没有标签栏项目的 UITabBarController 中的 UIViewController

Posted

技术标签:

【中文标题】没有标签栏项目的 UITabBarController 中的 UIViewController【英文标题】:UIViewController in a UITabBarController without tab bar item 【发布时间】:2013-07-11 08:40:58 【问题描述】:

所以我有这个应用程序,其中有一个视图控制器(我想在应用程序启动时首先出现)和一个标签栏控制器。我还有其他导航栏控制器位于标签栏控制器中。我想将我的视图控制器放在标签栏控制器的顶部。让标签栏控制器成为视图控制器的父级会更好。

但请注意,我不希望标签栏项目代表视图控制器,我希望标签栏与视图控制器一起出现。我不会也不想尽可能多地使用故事板。我怎样才能做到这一点?

【问题讨论】:

所以这个特殊的视图控制器会一直显示,直到一个标签被选中,然后它会被移除并且再也无法访问? @Wain 是的。它已被删除但仍可访问。我将在导航栏上制作一个“主页按钮”以使其再次可访问。 因此您可以在需要时将其添加为子视图,并在点击任何选项卡时将其删除(在回调中),这一切都在代码中完成。 【参考方案1】:

我想最简单的解决方案是使用 tabBar 的屏幕截图并将其作为按钮放入您的 HomeViewController。在这种情况下,您可以将HomeViewController 用作rootViewController,并在按钮操作中将TabBarController 设置为rootViewController

根 = 主页 + 按钮 --> Root = TabBar

如果要选择正确的选项卡,可能需要四个按钮。

【讨论】:

以上是关于没有标签栏项目的 UITabBarController 中的 UIViewController的主要内容,如果未能解决你的问题,请参考以下文章

为啥标签栏项目的徽章没有改变

没有 TabBarController 的标签栏 - 为情节提要中的标签栏项目添加视图控制器

没有标签栏项目的 UITabBarController 中的 UIViewController

导航栏项目作为标签栏项目

增加标签栏项目之一的高度

在 SwiftUI 中增加标签栏项目图标的大小