2015-01-08 3 views
0

У меня есть приложение, которое имеет много разных видов. Точкой входа в приложение является домашняя страница, где у меня есть 2 кнопки (обратите внимание, что домашняя страница встроена в контроллер навигации). Каждая кнопка ведет к новому стекю представлений, я попытался внедрить первое представление этих стеков в контроллер навигации, но когда я нажимаю кнопку на домашней странице, которая ведет к новому стеку, приложение аварийно завершает работу, предоставляя мне приложение «Terminating» из-за неотображенного исключения «NSInvalidArgumentException», причина: сообщение «Нажатие навигационного контроллера не поддерживается». Поэтому я избегал встраивания стеков в контроллер nav. Проблема возникает, когда я нажимаю кнопку сохранения в последнем представлении стека. В там я обычныйpopToViewController, представляющий черный вид

self.navigationController?.popToViewController(firstViewController, animated: true) 

Это не работает, и я получаю послал к firstViewController, однако навигационная панель кнопка не отображается, фон черный и ничего не видно. Если я popToRootViewController, то он работает. Ура!

+0

Возможно, было бы интересно узнать, находится ли 'firstViewController' в массиве' viewControllers' 'self.navigationController'. –

+0

Я честно не знаю, я начал разработку не так давно, поэтому я еще не эксперт, но я нашел решение, которое работает. Благодаря! – user4363124

+0

Я рад, что у тебя что-то работает. (Если вам было интересно, что было раньше, использование отладчика или NSLog для просмотра вещей, о которых я упоминал в своем комментарии, мог бы найти ответ.) –

ответ

0

Хорошо, теперь я чувствую себя глупо, я понял, что переходы между моими кнопками и контроллерами представлений были толчками. Теперь я встроил первый контроллер представлений обоих стеков в навигационном контроллере и изменил свои сегменты на модальные сегменты. Делая это, я смог использовать popToRootViewController вместо popToView Controller ... Теперь моя кнопка сохранения вернулась к контроллеру представления, который я хотел показать, все работает нормально.

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