切换到另一个视图控制器时,如何保持标签栏可见? [关闭]

Posted

技术标签:

【中文标题】切换到另一个视图控制器时,如何保持标签栏可见? [关闭]【英文标题】:How do I keep my tab bar visible when segueing to another view controller? [closed] 【发布时间】:2021-08-30 23:15:30 【问题描述】:

我目前面临的问题是,我想通过按下橙色控制器右上角的图标从橙色视图控制器切换到黄色视图控制器。我面临的问题是,当我在模拟器中单击图标时,它会转到黄色控制器,但标签栏会消失。从标签栏可访问的视图中切换到其他视图时,如何确保标签栏不会消失?谢谢!

【问题讨论】:

你好!如果您想尽快了解您的解决方案,那么您应该搜索“如何在 *** 中提出问题?”。但是现在你能提供你的代码吗? 【参考方案1】:

您需要将 Orange HomeViewController 包裹在 UINavigationController 中,并将 UINavigationController 嵌入到 UITabBarController 中。当您从 Orange 导航到 Yellow 时,您可以将其推送到 Orange 的导航控制器。

当您对嵌入在UITabBarController 中的UINavigationController 进行push 调用时,它将使TabBar 在下一个屏幕中可见。

【讨论】:

您好,感谢您的回复!我可以知道包装和嵌入有什么区别吗?如何将橙色控制器包装在导航控制器中?然后我是将它嵌入到 new 标签栏控制器还是橙色控制器上方的现有控制器中? 这个例子没有区别。您可以转到故事板,选择 HomeViewController 然后转到故事板的右下角 - 和 Embed In > Navigation Controller 如下所示 - imgur.com/VIcjI9S 谢谢!我设法让标签栏在黄色视图控制器上可见,但我遇到的一个新问题是我现在在顶部有 2 个导航栏,第一个大概是我在开始时设置的导航栏。这是整个应用程序的流程。我可以知道如何纠正这个问题吗?太感谢了! imgur.com/sghY5IK 好吧,看起来很奇怪。你在UINavigationController 中有你的UITabBarController 吗?如果是,那么您需要做的是 - 删除包含 UITabBarController 的*** UINavigationController。为其余的视图控制器重复答案配置 Embed In > Navigation Controller - SearchProfile

以上是关于切换到另一个视图控制器时,如何保持标签栏可见? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

在 UITabBarController 中,如何从一个视图控制器切换到另一个视图控制器并保留标签栏?

在导航到另一个视图控制器之前切换标签栏

如何在 iPhone 中从一个 Tabbarview 控制器切换到另一个 TabbarViewController?

如何将标签栏项目中的项目链接到另一个视图控制器

iOS UI 元素在标签栏控制器中来回切换后被拉伸

移动到其他视图控制器时的标签栏