【问题标题】:dismissViewControllerAnimated() does not dismiss view controllerdismissViewControllerAnimated() 不会关闭视图控制器
【发布时间】:2014-09-21 18:51:53
【问题描述】:

我正在使用 xcode 6。我的故事板中有一个“取消”按钮,当我单击它时,我想关闭我的视图控制器并返回到我原来的位置。所以在我的情节提要中,我将取消按钮连接到我的视图控制器,并通过“修饰”到我的“handleCancel”方法。

当我触摸按钮时,我看到正在调用“handleCancel”。我看到了我放的调试 printfs。但它不会解雇我当前的视图控制器。

@IBAction func handleCancel(sender: AnyObject) {      
    println("Calling handle Cancel")
    self.dismissViewControllerAnimated(false, completion: nil)
}

你能告诉我我还缺少什么吗?

谢谢。

【问题讨论】:

  • 此代码所在的控制器是否由模态呈现(或模态转场)呈现?

标签: ios swift


【解决方案1】:

当前的控制器类是什么?用户界面控制器? UINavigationController?等等。呈现控制器的类是什么?最后,你使用了什么样的segue?如果不确定,请检查情节提要中的连接检查器。根据这些答案会有不同的技术。

例如,如果这是 UINavigationController 中的推送转场,您将弹出视图:

self.navigationController?.popViewControllerAnimated(true)

任何方法,让我们知道。

【讨论】:

  • 当前控制器是一个 UIViewController。它有一个“取消”按钮。当用户按下“取消”按钮时,我想将其关闭。在此之前,控制器是 UITableViewController,我通过单击导航栏中的按钮来启动此控制器。我在按钮中使用“显示”segue。
  • 是push segue还是modal segue?
  • 哇,你认真解决了我的问题!感谢您的解释和回答。我有不同类型的控制器,我没有意识到你必须使用不同的方法来关闭。
猜你喜欢
  • 2014-10-04
  • 1970-01-01
  • 1970-01-01
  • 2018-08-07
  • 2022-01-10
  • 2018-03-08
  • 1970-01-01
  • 2011-09-27
  • 1970-01-01
相关资源
最近更新 更多