iOS开发中控制器多次push、present之后再回到原控制器

 var presentingVc = self.presentingViewController
        
 while presentingVc?.presentingViewController != nil { // 找到最底层那个present的控制器
    presentingVc = presentingVc?.presentingViewController
}
        
 if presentingVc != nil {
    // 回到最初present的那个控制器
    presentingVc?.dismiss(animated: true)

    if presentingVc is UINavigationController {
         let navc = presentingVc as! UINavigationController
         navc.popToViewController(ViewController(), animated: true)
    }
} else {
    self.navigationController?.popToViewController(ViewController(), animated: true)
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容