好的,所以我的应用程序的层次结构类似于:
TabBarController
- > SeprateNavigationControllerForEveryChildVC
- > 5ViewControllers
,
所以我的VC1(ViewController)
开放VC2
工作正常,但我也在VC1
打开VC2
,所以现在我要查看我的VC2
是否正在由VC1
打开或不打开,以便我可以在VC2
我在VC2
viewDidAppear
if self.isBeingPresented() {
// being presented
print("isBeingPresented")
}
else if self.isMovingToParentViewController() {
// being pushed
print("being pushed") }
但它不打印任何东西,
这就是我从VC1
到VC2
if segue.identifier == "selectChannelSegue"{
let navigationController = segue.destinationViewController as! UINavigationController
let viewController2 = navigationController.childViewControllers[0] as! SelectChannelsTableViewController
viewController2.delegate = self
}
任何想法会怎么做?如果是,那么请指导我
答案 0 :(得分:0)
试试这个:
func isModal() -> Bool {
if (presentingViewController != nil) {
return true
}
if presentingViewController?.presentedViewController == self {
return true
}
if navigationController?.presentingViewController?.presentedViewController == navigationController {
return true
}
if (tabBarController?.presentingViewController is UITabBarController) {
return true
}
return false
}