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)
}
iOS开发中控制器多次push、present之后再回到原控制器
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 问题: 从控制器A push到B,再从B present到C,再从C present到D,从D再push到E,最后...
- 当present到一个控制器时,把带导航条的父控制器一起传过去,就可以在当前控制器中navigationContr...
- 1 UIViewController *vc = self.presentingViewController; 2...
- controller在跳转时,可能会有push和present交叉使用,比如A push BB push CC p...