Я представляю контроллер просмотра модально с помощью этого кода:parentViewController возвращение нуль на IOS
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
SubmitAYoNViewController *ivc = [storyboard instantiateViewControllerWithIdentifier:@"SubmitAYoN"];
[ivc setModalPresentationStyle:UIModalPresentationFullScreen];
[self presentViewController:ivc animated:YES completion:nil];
Тогда в моем SubmitAYoNViewController у меня есть это:
NSLog(@"%@",self.parentViewController);
if([self.parentViewController isKindOfClass:[YesOrNoViewController class]]) {
NSLog(@"do something");
}
self.parentVeiwController является NULL. Почему это?
EDIT: Я хочу получить доступ к методу из моего родительского контроллера представления, а затем к тому, с которого был открыт объект SubmitAYoN.
РЕШЕНИЕ: Вместо этого я использовал делегатов. Согласно нижеприведенным ответам, presentViewController не создает отношения родитель-потомок.
Вы проверили свой идентификатор в доске объявлений? это @ "SubmitAYoN"? – Rajesh
@iDev Да, идентификаторы верны, потому что новый вид открывается правильно, и все остальное работает в этом vc. – ghostrider
Если вам нужен контроллер представления представления, используйте «self.presentingViewController». 'self.parentViewController' возвращает родительский контроллер, который будет равен нулю, если он не является дочерним элементом другого контроллера. –