2015-05-07 8 views
2

Я пытаюсь представить новый контроллер представления, который приходит через диспетчер представления представления, который уволен, и имеющий представленный контроллер представления «уже» находится за презентационным, много в том же способ отображения/отклонения модального контроллера.Представляем новый контроллер представления под контроллером текущего представления

Есть ли способ достичь этого, просто представив контроллер вида, или мне нужно каким-то образом представить контроллер вида перед началом работы, а затем скрыть его под ним и затем убрать контроллер представления представления?

+0

Как отображается текущий контроллер представления? Модально? В навигационном контроллере? Как ребенок чего-то еще? – Wain

+0

помогает ли мой ответ? у вас есть еще вопросы? :) @micnguyen – nburk

ответ

2

Вы можете сделать это, «сокрыв» свой второй контроллер просмотра под первым контроллером представления, который вы хотите отобразить. UINavigationController дает вам все необходимое для этого бесплатно.

Используйте следующий (псевдо-) код из контроллера представления, где вы показываете модальный вид:

FirstVC *first = [[FirstVC alloc] init]; // this VC is shown first 
SecondVC *second = [[FirstVC alloc] init]; // this VC that hides beneath the other 

UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:second]; 
[nav pushViewController:first animated:NO]; 

[self presentViewController:nav animated:YES completion:nil]; 

Затем, когда вы хотите, чтобы закрыть первый контроллер представления, можно назвать:

[self.navigationController popViewControllerAnimated:YES]; 

Обратите внимание, что вам все равно придется отказаться от модального вида.

+0

Спасибо nburk - это именно то, что я хотел. Я не был уверен, что если бы я нажал контроллер просмотра, не анимированный, независимо от того, будет ли он по-настоящему junky-анимацией, но это здорово, я просто должен дать ему настраиваемый контроллер анимации контроллера навигации. Приветственный помощник. – micnguyen

Смежные вопросы