今晚一直在纠结这个,问题是这样的:
有一个viewControllerA:
在viewControllerA中有这样一段代码:UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:viewControllerB];
nav.modalPresentationStyle = UIModalPresentationFormSheet;
[viewControllerA presentModalViewController:nav animated:YES];
nav.view.superview.frame = CGRectMake(0,0 , 700, 560);
nav.view.superview.center = viewControllerA.view.center;
然后显示了viewControllerB,现在的问题是,我要怎么在viewControllerB中得到viewControllerA呢?
官方文档说parentViewController这个属性在ios5.0之后会返回nil,改用self.presentingViewController,可是还是不对啊,有人知道应该怎么得到吗?
有一个viewControllerA:
在viewControllerA中有这样一段代码:UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:viewControllerB];
nav.modalPresentationStyle = UIModalPresentationFormSheet;
[viewControllerA presentModalViewController:nav animated:YES];
nav.view.superview.frame = CGRectMake(0,0 , 700, 560);
nav.view.superview.center = viewControllerA.view.center;
然后显示了viewControllerB,现在的问题是,我要怎么在viewControllerB中得到viewControllerA呢?
官方文档说parentViewController这个属性在ios5.0之后会返回nil,改用self.presentingViewController,可是还是不对啊,有人知道应该怎么得到吗?
a 的 presentingViewController应该是 nav
b是被包在nav里,但a是在nav之外的,怎么会从nav的viewcontroller里得到呢?
应该是b.navigationController 得到nav
nav.presentingViewController 得到a