【问题标题】:iOS - Push segue incorrectly coming from bottomiOS - 从底部错误地推送 segue
【发布时间】:2016-10-05 13:28:54
【问题描述】:

我有一个标识符为“LoginSegue”的推送 Segue,旨在从“登录视图控制器”转换为“视图控制器”。

这是我的故事板: 这是Segue:

用户成功登录后,我从 LoginViewController 中调用以下内容:

performSegueWithIdentifier("LoginSegue", sender: self)

为了从“登录视图控制器”转换到“视图控制器”。

我希望这种转换从右到左发生,因为它是一个 Push segue,但由于某种原因它是从下到上发生的。

如何纠正这种行为?

【问题讨论】:

  • 你确定 LoginViewController 在 navigationController 中吗?通过 LoginViewController 的 viewDIdLoad 方法中的 print(self.navigationController) 进行检查。
  • @PrajeetShrestha self.navigationController 为零。我通过选择 LoginViewController 并执行 Editor > Embed In > Navigation Controller 创建了导航控制器

标签: ios iphone swift storyboard segue


【解决方案1】:

您在导航控制器中没有 LoginViewController。如果您在任何不在 navigationController 内的视图控制器中推送另一个视图控制器,它将以模态方式呈现。

您可能以编程方式将 LoginViewController 设置为 window 的 rootViewController,或者确保 navigationController 是 initialViewController 而不是情节提要中的 LoginViewController。 p>

您可以随时检查是否有任何视图控制器在 navigationController 中,只需: print(self.navigationController) 在视图控制器的 viewDidLoad 方法中。

【讨论】:

  • 你完全正确。我有一些代码设置了我忘记的 rootViewController。
猜你喜欢
  • 1970-01-01
  • 2012-11-24
  • 1970-01-01
  • 1970-01-01
  • 2013-02-04
  • 1970-01-01
  • 2016-01-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多