update:
I\'ve faced this problem again, and found another way. If presenting controller is not embedded in navigation controller, it will be hidden if p
In some situations, you could have each modally presented view controller present the next one.
let window = UIApplication.sharedApplication().keyWindow!
if let modalVC = window.rootViewController?.presentedViewController {
modalVC.presentViewController(vc, animated: true, completion: nil)
} else {
window.rootViewController!.presentViewController(vc, animated: true, completion: nil)
}