erd*_*mgc 37 uinavigationcontroller ios swift
我需要从导航控制器弹出一个UIViewController.
只需编写这行代码,但要做一个例外;
在展开Optional值时意外地发现了nil
self.navigationController.popViewControllerAnimated(true)
如果我使导航控制器可选,此行不起作用,不弹出
self.navigationController?.popViewControllerAnimated(true)
怎么解决?
kar*_*ofk 85
您需要正确地解开您的navigationController
if let navController = self.navigationController {
    navController.popViewController(animated: true)
}
Ani*_*mar 19
Swift 3.0这对我有用
_ = self.navigationController?.popViewController(animated:true)
在我的情况下我使用主详细信息视图(拆分视图控制器).我的详细信息视图控制器嵌入在导航控制器中.所以,当我想解雇我的详细信息视图控制器.我不得不从父控件(Split视图控制器)的导航控制器中弹出它.
_ = self.navigationController?.navigationController?.popViewController(animated: true)
希望这有助于某人.
您正在使用的视图控制器似乎未嵌入导航控制器中.如果有一个导航控制器,即self.navigationController不是nil,那么两条线应该也能正常工作,即使后者是优选的,因为它使用可选的链接.
确保已将View Controller嵌入导航控制器中.您可以通过在Storyboard编辑器中选择View Controller并单击Editor - > Embed In - > Navigation Controller来完成此操作.还要确保您的Storyboard入口点(指示首先显示哪个视图控制器的箭头)指向导航控制器或之前.
| 归档时间: | 
 | 
| 查看次数: | 59308 次 | 
| 最近记录: |