Задать вопрос
loogle18
@loogle18

Почему автоматически не создается navigation bar с back button при show segue?

Всем привет!

Не могу понять, почему автоматически не создается Navigation Bar` и Back Button при создании нового segue? Не получается через интерфейс Xcode'a получить желанный результат.
Навигация самая обычная: NC (root relation)-> VC (via button) -> AnotherVC
Понимаю, что, скорее всего, где-то туплю, но никак не могу понять где именно. Ибо сейчас мне надо решать сразу две проблемы из-за этого:
Везде руками вызывать `dismiss` метод и писать функцию на возврат назад с помощью свайпа слево-направо, а хочется иметь это из коробки.

Возможно кто-то из Вас сталкивался с таким, буду рад помощи!
Xcode v. 8.2.1

Заранее спасибо!
  • Вопрос задан
  • 1079 просмотров
Подписаться 1 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 3
@iFamily
Expert in Server-Side-Swift and iOS development
Руками делаете или в Interface Builder'e?
Если в IB, то проблем быть не должно, там создаете NavigationController с ним вместе будет создан ViewController, который подцеплен к NC как root, далее просто show segue на другой VC от любой кнопки и все будет с Navigation Bar'ом.

Если руками, то:
let vc = UIViewController()
let nav = UINavigationViewController(rootViewController: vc)
present(nav, animated: true)

Других вариантов нет, работает все отлично
Ответ написан
Комментировать
@Tommy32
В интерфейсе кликаем VC. Editor->Embed In-> NavigationController А потом уже добавляем в топбар нашу кнопку.
Ответ написан
Комментировать
loogle18
@loogle18 Автор вопроса
В итоге отказалось, что проблема заключалась в переходе между сторибордами. Забыл упомянуть, что вопрос был актуален не для Main.Storyboard. Дело в том, что переход от одного контроллера (из Main) в другой (который находиться в новом сториборде) создавался программно с помощью метода present. Пока не понял почему, но при таком переходе, навигейшн контроллер не работал линейно (если так можно сказать) и на каждый segue просто презентовал новый контроллер. Если создать переход от одного контроллера (в одном сториборде) к другому (в другом, соответственно) с помощью метода show, то все работало нормально.

Буду искать причину.
Спасибо всем за ответы.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы