带有选项卡视图控制器的 Xcode IOS 转换视图

Posted

技术标签:

【中文标题】带有选项卡视图控制器的 Xcode IOS 转换视图【英文标题】:Xcode IOS transition views with a tab view controller 【发布时间】:2015-03-01 19:41:39 【问题描述】:

我正在使用 Swift 开发一个 ios 应用程序并有一个选项卡视图控制器。我在 SecondViewController 启动应用程序以允许用户插入他们的信息,单击保存后我想以编程方式转换到不同的视图。当我使用以下代码时,视图会转换,但标签栏会消失。

    let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)        
    let home = storyBoard.instantiateViewControllerWithIdentifier("home") as FirstViewController
    self.presentViewController(home, animated:true, completion:nil)

我不应该呈现视图而只使用不同的形式,如 segue 或其他什么吗?

这又是一个标签栏控制器。 谢谢

【问题讨论】:

【参考方案1】:

使用presentViewController 方法,您的特定视图控制器会以模态方式显示在当前选项卡栏和导航堆栈上方。

要保持标签栏可见,您必须通过在当前导航控制器上调用 pushViewController(..) 方法将新视图控制器推送到当前导航堆栈, - 这实际上是正确的假设您在情节提要中定义了FirstViewController 并将其连接到UITabBarController 中的第一个选项卡,则在您的特定情况下进行操作——您可以简单地告诉您的tabBarController 选择特定的segmentedIndex(在本例中为0)。 这样的事情应该会有所帮助:

self.tabBarController.selectedIndex = 0

【讨论】:

以上是关于带有选项卡视图控制器的 Xcode IOS 转换视图的主要内容,如果未能解决你的问题,请参考以下文章

XCode 5 - 使用选项卡视图控制器时,约束并不总是保留在运行时

iOS:使用选项卡视图控制器更改故事板不会反映在模拟器上

升级到 XCode 13(和 iOS 15)后选项卡和导航栏发生变化

Xcode 旧标签栏图标突然出现

使用 XCode 故事板切换视图控制器时出现黑屏

表视图控制器上的 ios 栏按钮项