【发布时间】:2019-11-25 21:05:25
【问题描述】:
我在这里解雇了一个 VC 并尝试导航新的 VC,但导航不起作用。解雇 VC 工作正常。
@IBAction func onClickEmailBtn(_ sender: UIButton) {
//dismiss VC
self.dismiss(animated: false, completion: nil)
//Navigate to VC
DispatchQueue.main.async {
let cevc = self.storyboard?.instantiateViewController(withIdentifier: "CEVC") as! EmailViewController
self.navigationController?.pushViewController(cevc, animated: true)
}
}
这里我有一个名为 VC1 的 NavigationViewController,我将在上面展示一个名为 VC2 的 VC。在这个 VC2 中,当我单击按钮时,我想导航名为 EmailVC 的新 VC。
【问题讨论】:
-
能否请您也分享层次结构,当前控制器是否存在?
-
找出根导航控制器并尝试使用该控制器进行推送。
-
@SGDev,我有一个名为 VC1 的 VC,我正在展示另一个名为 VC2 的 VC,当我在该 VC2 中单击 btn 时,我想导航新的 VC3。在这里,我将 VC2 与 `let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "SVC") 作为! SecondViewController //呈现模态 self.present(vc, animated: false, completion: nil)`
-
尝试在self.dismiss的completion handler中添加pushViewController代码,不用主队列
-
@manishsharma93,你能帮我写代码吗...
标签: ios swift cocoa-touch uiviewcontroller uinavigationcontroller