self.dismiss(animated: false) {
let vc = self.storyboard?.instantiateViewController(withIdentifier: "ViewController") as! ViewController
self.navigationController?.pushViewController(vc, animated: false)
}
self.navigationController 只有在您的 ViewController 嵌入到 UINavigationController 中时才具有值,否则它将为 nil。 在您的情况下,它是 nil,因此您的控制器已成功关闭,但视图控制器未被推送。
在完成块中使用self.presentingViewController来推送对象。
self.dismiss(animated: false) {
let vc = self.storyboard?.instantiateViewController(withIdentifier: "ViewController") as! ViewController
self.presentingViewController?.navigationController?.pushViewController(vc, animated: false)
}