Вы используете iOS 5?
Если да проблема, которую Вы видите, это связано с изменением документированной здесь: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instp/UIViewController/parentViewController
Важный бит в этой связи заключается в следующем:
Перед прошивкой 5.0, если вид не было контроллер родительского представления и был представлен модально, контроллер представления, который его представлял, будет возвращен. Это уже не так. Вы можете получить контроллер представления представления, используя свойство presentingViewController.
Таким образом, изменение на self.presentingViewController может исправить вашу проблему, но, вероятно, этого не произойдет.
Используя этот код из первого модального:
[self dismissModalViewControllerAnimated:YES];
SecondViewController *sec = [[SecondViewController alloc] initWithNibName:nil bundle:nil];
sec.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self.presentingViewController presentModalViewController:sec animated:YES];
Вы не видите новый контроллер взглядов.
Чтобы получить то, что вы после этого вы хотите использовать новый (на iOS5) Метод:
- (void)presentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion
Этот метод рекомендуется для замены presentModalViewController.
И пользовательский метод на первый контроллер представления, что-то вроде:
- (void)cycleModalViewControllersWithController:(UIViewController *)newViewController
Этот метод может и отклонить текущее модальность и представить новую, что-то вроде этого:
- (void)cycleModalViewControllersWithController:(UIViewController *)newViewController {
[self dismissViewControllerAnimated:YES completion:^{
[self presentViewController:newViewController animated:YES completion:NULL];
}];
}
Использование блок завершения, чтобы запустить новый модальный, давайте подождем, пока старый модальный анимирован. Поэтому во втором модульном контроллере просмотра вы вызываете свой собственный метод на своем первом модульном контроллере просмотра и позволяете ему управлять увольнением/представлением нового.
какой класс сам? –
self - это модальный вид, который отображается под слоем страницы. – Keller