addChildViewController и удалите его - PullRequest
1 голос
/ 11 декабря 2011

В главном ViewController моего проекта, когда пользователи приложения нажимают кнопку «Пуск», я добавляю следующий вид на экран:

UIViewController *nextController = [[GamePlayViewController alloc] initWithNibName:@"GamePlayView" bundle:nil];
[self addChildViewController:nextController];
[self.view addSubview:nextController.view];

Теперь, когда пользователи хотят вернуться в главное меню, какой код нужно запустить?

Я знаю, что могу перейти от одного viewController к другому, вот так:

[self transitionFromViewController:currentPageController 
                      toViewController:nextController 
                              duration:0 
                               options:UIViewAnimationOptionTransitionCurlDown
                            animations:nil 
                            completion:^(BOOL finished) { [nextController didMoveToParentViewController:self]; }];

Но что, если я просто хочу вернуться к главному ViewController проекта?

СПАСИБО!

Ответы [ 3 ]

1 голос
/ 11 декабря 2011

почему бы вам просто не использовать

 [self presentModalViewController:currentPageController  animated:YES];

и когда вы хотите вернуться, используйте

    [self dismissModalViewControllerAnimated:YES];

!!!

0 голосов
/ 07 ноября 2016

Вы можете сделать это, используя код ниже:

[self willMoveToParentViewController:nil];
[self.view removeFromSuperview];
[self removeFromParentViewController];

Где self ваш view controller.

Работает нормально для меня!

0 голосов
/ 11 декабря 2011

Почему вы пытаетесь изобрести колесо?
Просто используйте контроллер навигации и нажмите контроллер второго вида.
Или, если в вашем случае неправильно использовать контроллер навигации, вы можете открытьвторой контроллер представления как модальное представление и отклонение его, когда сделано ...

...