swift - 使用 UINavigationController 执行 segue(没有 IBAction)
问题描述
向您展示图纸然后进行解释会更容易。
仪表板故事板
我UIViewControllers
在名为ContainerViewController
.
发布故事板
NewPostViewController
显示一个UIButton
呈现TextPostViewController
。如您所见,它们都嵌入在UINavigationControllers
. 现在,一旦调用了新帖子的完成块,我必须展示它ContainerViewController
并且它需要处理它自己的逻辑。问题是它是嵌入的UINavigationController
,一旦我展示它,它就UITaBbar
被隐藏了。
我试图这样做:
self.performSegue(withIdentifier: "TextPostToNavContainerVC", sender: nil)
过渡是成功的,但我失去了 UITabBar,即使在DashboardViewController
和ContainerViewController
我打电话的时候:
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
tabBarController?.tabBar.isHidden = false
}
我做错了什么还是有更好的方法来做到这一点?
解决方案
您应该实例化标签栏控制器。不是视图控制器。想象一下,您在标签栏控制器之前放置了一个初始视图控制器。使您的标签栏不被推送
如果我理解正确的话。您正在执行此 Segue 连接到视图控制器 但您实际上应该执行此Segue 连接到选项卡栏控制器
推荐阅读
- masstransit - 为什么在构造函数中注入的 MassTransit ConsumeContext 不包含 Message?
- android - 我正在使用 Android Studio 中的布局
- c# - “连续快速切多个水果给玩家双倍/三倍积分”
- java - 如何在 Z3 java API 中获取上限和下限?
- flutter - 颤振:如何从扩展面板中删除图标
- reactjs - 输入“承诺”
' 缺少类型 'ReactElement 的以下属性 - python - 使用 args 定义函数以在 df.transform 中使用
- amazon-web-services - terraform 中的任务执行 IAM 角色
- php - 使用 OCB 模式时,Openssl 解密失败
- javascript - Add CSS dynamically to non-sibling div using JavaScript/jQuery?