在一个应用程序中快速处理多个 TabBarController
Posted
技术标签:
【中文标题】在一个应用程序中快速处理多个 TabBarController【英文标题】:Swift multiple TabBarControllers in one application 【发布时间】:2022-01-01 07:40:26 【问题描述】:我是 ios 开发的新手,在制作我的第一个应用程序时,我不知道如何为不同的视图实现不同的 TabBar。我在 NavigationController 内有一个 TableView,在 TabBarController 内。 NavigationViewController 的 TabBar 有“Home”和“Settings”。
当用户单击 TableView 单元格时,会显示 DetailViewController,我真的很想这样做,以便在 DetailViewController 中,会有一个不同的 TabBar 作为“邀请”按钮。就像在 Reddit 应用程序中一样,TabBar 似乎会根据您是否点击帖子而发生变化(请参阅屏幕截图)。
TabBar at HomeTabBar inside post
我尝试为 DetailView 嵌入一个单独的 TabBarController,但它不起作用(也许我没有正确执行)。我可能问错了问题,因为我没有从谷歌得到任何东西。我对 TabBarControllers 尤其不熟悉,所以我非常想了解这个实现是如何完成的。我完全一无所知;任何形式的帮助将不胜感激。谢谢!
【问题讨论】:
【参考方案1】:在情节提要中创建 2 个 Tabbar 控制器。 为每个标签栏创建一个 UITabBarController 类。 添加导航控制器。 像 viewController 一样从 Tabbar1 推送到 Tabbar 2
@IBAction func btnCheckClick(_ sender: Any)
let vc = UIStoryboard.init(name: "Main", bundle: Bundle.main).instantiateViewController(withIdentifier: "TabBar2") as? TabBar2
self.navigationController?.pushViewController(vc!, animated: true)
【讨论】:
您好,感谢您的回答!但是,这很好用,在我的情况下,我使用了两个导航栏按钮项目,其中一个是“添加”按钮,用于在我的 TableView 中添加一个新单元格。当我使用这种方法时,它使我只能在 TabBar1 中添加 BarButtonItems,即 TabBarController。这意味着我必须在 TabBar1 类中实现向 TableView 添加一个新元素,我不知道如何实现这一点。 您可以创建一个在导航栏上添加按钮的功能...并在第二个 tabBar 上调用它以获取相同的按钮...随着您的 tabBar 发生变化 如果你有很多导航控制器,并且每个控制器都需要 rightBarButton。然后您可以使用 UINavigationItem 将其添加到应用程序委托 另外,我们将不胜感激以上是关于在一个应用程序中快速处理多个 TabBarController的主要内容,如果未能解决你的问题,请参考以下文章
idea java方法中 传多个参数对象 的复制粘贴快速处理方法