2013-12-14 3 views
1

Я пытаюсь переключиться на другой вид в моем навигационном контроллере, когда запускается приложение didRecieveRemoteNotification.вид переключателя iOS в контроллере навигации из делегата приложения

Вот мой текущий код:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 
    ConvViewController *ivc = [storyboard instantiateViewControllerWithIdentifier:@"chatConversation"]; 
    [(UINavigationController*)self.window.rootViewController pushViewController:ivc animated:NO]; 

По некоторым причинам я получаю (lldb) ошибку на второй линии.

Любые идеи, что я делаю неправильно?

Редактировать

Я использую раскадровку идентификатор SEGUE: chatConv на мой пользовательском класс: ConvViewController и мой пользовательский класс имеет раскадровку ID: chatConversation

Вот моя Раскадровка: enter image description here

+0

Какое сообщение об ошибке вы получите? – thorb65

+0

Он говорит только '(lldb)' – user3082584

+0

Является ли навигационным контроллером вы отображаете контроллер корневого представления окна? Это не похоже на ваш образ. В любом случае, вы должны зарегистрировать как ivc, так и self.window.rootViewController, чтобы увидеть, что они показывают. – rdelmar

ответ

0

chatConversation должен быть ViewController в MainStoryboard.storyboard. В MainStoryboard.storyboard выберите chatConversation ViewController. На панели «Идентификаторы» убедитесь, что для вашего пользовательского класса установлен ChatViewController.

+0

Да, это уже есть:/ – user3082584

0

instantiateViewControllerWithIdentifier принимает идентификатор контроллера просмотра, а не идентификатор segue. Так что-то вроде:

[storyboard instantiateViewControllerWithIdentifier:@"convViewController"]; 
+0

Ошибка при получении '(lldb)' – user3082584

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