将主选项卡栏添加到其他视图控制器

问题描述 投票:-3回答:2

我是一个新的Swift开发人员。我正在使用Swift 4.2和XCode 10.2。

我有一个带有5个标签栏项目的标签栏控制器。在每个标签栏项目的视图控制器中,有一个按钮,用于在不同的视图控制器中显示余额(称之为平衡视图控制器)。我从每个按钮到平衡视图控制器都有一个segue。

我正在使用界面构建器,但很乐意添加代码。

如何将主标签栏放在Balance View Controller上,这样当用户查看余额时,他可以选择另一个标签栏项并继续?我拒绝使用导航控制器,因为后退按钮会干扰每个屏幕顶部的统一视图,我不想调整它。

我找不到解决这个问题的任何问题。我发现的所有其他Web资源都是如何实现标签栏的基础。任何帮助,将不胜感激。

ios swift uitabbar
2个回答
2
投票

另一种方法:

Balance View Controller加载为Child ViewController,并在当前视图的顶部显示其视图。这将使标签栏单独保留,允许用户导航到另一个选项卡。

Balance View Controller听起来像只是一个信息显示。如果是这样,您可以添加点按手势,只需点按即可将其从当前视图中删除。

如果Balance View Controller是交互式的,您可以添加一个按钮将其从当前视图中删除。

由于您说每个选项卡的VC中都有一个按钮来显示Balance View Controller,因此当您选择另一个选项卡时,您可能还希望将其从当前视图中删除。


1
投票

我拒绝使用导航控制器,因为后退按钮会干扰每个屏幕顶部的统一视图,我不想调整它。

实现这一目标的最佳方法是使用UINavigationController我们可以对Top导航栏做什么,而daz back button是我们可以隐藏整个事情的

// Add this to your viewcontroller
override func viewDidLoad() {
    super.viewDidLoad()

    self.navigationController?.isNavigationBarHidden = true
}

如果您愿意,可以进一步禁用视图控制器的动画

希望这可以帮助

© www.soinside.com 2019 - 2024. All rights reserved.