从我在 swift 中使用模态打开的 viewController 访问 navigationController
access navigationController from a viewController that i opened using modal in swift
我正在使用 navigationController(推送和弹出),但在特殊情况下,我必须使用模态 segue 显示下一个 viewcontroller,当我关闭该模态时,我想弹出最后一个 viewController 在 navigationController 中,然后在关闭模态后推送一个新的出现,我如何从模态 viewController 访问充满 viewControllers 的 navigationController
我可以将 navigationController 中的最后一个元素作为模态的 prepareForSegue 中的 self 发送,但我想问是否有另一种方法,抱歉,我的问题总是很复杂
听起来像是 delegation or notifications 的工作,具体取决于您希望如何处理。在任何一种情况下,您的 navigationController
都可以被通知在正确的时间执行 segue,或者作为代表访问并被指示这样做。
如果您的 navigationController 是 rootViewController,这将起作用
if let navigationController = UIApplication.sharedApplication().keyWindow?.rootViewController as? UINavigationController {
}
Swift 4个回答:
if let navigationController = UIApplication.shared.keyWindow?.rootViewController as? UINavigationController {
//Do something
}
我正在使用 navigationController(推送和弹出),但在特殊情况下,我必须使用模态 segue 显示下一个 viewcontroller,当我关闭该模态时,我想弹出最后一个 viewController 在 navigationController 中,然后在关闭模态后推送一个新的出现,我如何从模态 viewController 访问充满 viewControllers 的 navigationController 我可以将 navigationController 中的最后一个元素作为模态的 prepareForSegue 中的 self 发送,但我想问是否有另一种方法,抱歉,我的问题总是很复杂
听起来像是 delegation or notifications 的工作,具体取决于您希望如何处理。在任何一种情况下,您的 navigationController
都可以被通知在正确的时间执行 segue,或者作为代表访问并被指示这样做。
如果您的 navigationController 是 rootViewController,这将起作用
if let navigationController = UIApplication.sharedApplication().keyWindow?.rootViewController as? UINavigationController {
}
Swift 4个回答:
if let navigationController = UIApplication.shared.keyWindow?.rootViewController as? UINavigationController {
//Do something
}