【问题标题】:Swift ios error in navigating back导航返回时出现 Swift ios 错误
【发布时间】:2018-05-07 11:13:18
【问题描述】:

我使用了下面的代码。导航,但我已经尝试了所有可能的想法,我必须导航回来,但我总是收到错误。像 警告:尝试显示其视图不在窗口中。使用下面的代码时,最好的导航方式是什么?还是去另一个视图?

if let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "ScoreViewController") as? ScoreViewController
{
    present(vc, animated: true, completion: nil)
}

【问题讨论】:

  • 如果你想浏览你以前的 VC,那么只需使用dismiss(animated: true, completion: nil)

标签: ios swift navigation


【解决方案1】:

如果您使用 NavigationController 将一个 ViewController 推送到另一个 ViewController 则要导航回来,您必须像这样使用 Pop

self.navigationController?.popViewController(animated: true)

如果您使用模态控制器来呈现另一个控制器,那么要导航回来,您必须像这样使用 dismiss

dismiss(animated: true, completion: nil)

如有任何疑问,请告诉我。

【讨论】:

  • @Sir ,我可以在使用此关闭后触发视图加载吗(动画:true,完成:nil)?
  • 不,当时调用了 viewWillAppear
  • 因为我想在diss后触发viewdidload
  • 你也可以在 viewWillAppear 中做这些事情
  • 您最终可以创建委托以在关闭后调用方法
【解决方案2】:

您展示的是视图控制器,而不是推送它。要回到控制器,请写下以下控制器:-

dismiss(animated: true, completion: nil)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 1970-01-01
    相关资源
    最近更新 更多