【问题标题】:Dismissing View Controller Doesn't Work While Using Navigation Controller使用导航控制器时关闭视图控制器不起作用
【发布时间】:2018-12-17 17:04:19
【问题描述】:

我有两个视图控制器。

第一个嵌入在Navigation Controller 中。 在第一个视图控制器上有Bar Button Item,它通过一个segue 连接到第二个视图控制器。 segue 设置为 Push。一旦我转到第二个视图控制器,就会有一个 Bar Button Item 这是一个 IBAction 并且应该关闭页面,但它没有。

第二视图控制器代码:

import UIKit

class Page2ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

    }

    @IBAction func donePressed(_ sender: Any) {
        dismiss(animated: true, completion: nil)
    }

}

【问题讨论】:

  • “push”的反义词是“pop”,而不是“dismiss”。
  • @rmaddy "pop" 的功能是什么
  • 查看UINavigationController的文档。

标签: ios swift uinavigationcontroller dismiss navigationcontroller


【解决方案1】:

在您的donePressed(_:) 函数中,访问导航控制器并调用popViewController(_:) 函数。

@IBAction func donePressed(_ sender: Any) {
     navigationController?.popViewController(animated: true)
}

【讨论】:

    猜你喜欢
    • 2020-03-30
    • 1970-01-01
    • 2013-12-26
    • 2019-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多