查找哪个viewController是父级

问题描述

| 我有三个视图控制器,它们相互推到导航控制器上。 ViewController1可能会推送VC2或VC3 VC2可能会推VC3 这就是说,VC3由VC1或VC2打开。 VC1是UITableViewController的子类,而VC2是UIViewController的子类。 现在,在VC3中,我想知道VC1还是VC2创建了VC3。我怎样才能做到这一点?     

解决方法

        您可以检查;
[vc3 parentViewController];
返回
UIViewController
。根据您的需要,您可以做
if ([[vc3 parentViewController] isKindOfClass:[VC1 class]]) {
   //has been pushed by VC1
}
else if ([[vc3 parentViewController] isKindOfClass:[VC2 class]]) {
   //has been pushed by VC2
}