2016-08-01 3 views
0

У меня есть три контроллера вид:ИОС навигации стека с использованием раскадровки SEGUE

messagesVC: не имеет навигационного контроллера болтовня номер

viewControllerA: есть навигационный контроллер и направляет к messagesVC

viewControllerB: имеет навигационный контроллер и направляет сообщенияVC

Все три контроллера вида имеют собственную раскадровку для целей организации. Прямо сейчас, я создал раскладку segue для перехода от vcA или vcB к сообщениям VC. Я хочу, чтобы каждый раз, когда он показывался, нажимал messageVC на vcA или vcB, чтобы анимация с контроллером push view работала вместо того, чтобы передавать сообщения VC по модулю. Как мне это достичь?

ответ

0

В ситуации, когда у вас есть segue в раскадровке, выберите тип «show». Когда messageVC находится в другой раскадровке, вы должны загрузить его, как это:

let storyboard = UIStoryboard(name: "VCAStoryboard", bundle: nil) 
let vc = storyboard.instantiateViewControllerWithIdentifier("messageVC") as! MessageVC 

Затем нажмите на него, как это:

nvaigationController!.pushViewController(vc, animated: true) 

Это сделает работу.

+0

Я пробовал это, но self.navigationController возвращает ноль и, следовательно, не выполняет никаких действий. Есть идеи? –

+0

Вы сказали, что у него есть nvaigationController –

+0

Тогда, если нет, выберите свой vc в раскадровке, нажмите Редактор в меню -> Вставить в -> контроллер nvaigation –

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