2015-07-05 2 views
2

Как я понимаю, один из лучших способов обработки открывающих просмотров при нажатии на конкретный tableViewCell - это нажать на ViewController.Swift loading ViewController на TableViewCell Design

Однако это, по-видимому, работает только в том случае, если вы только встроили ViewController в NavigationController.

Вам понадобилось бы встроить каждый отдельный ViewController в контроллер навигации?

Это звучит как повторяющийся и утомительный - это хорошая практика?

+1

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

+0

О, вы можете обернуть вокруг своих контроллеров взгляда одним контроллером навигации? Вы делаете это программно? Я думал, вам нужно идти к каждому, а затем создать новую навигацию для каждого отдельного контроллера. – mdobrenko

+1

Ну, я использую функциональность, встроенную в раскадровки, называемую wrap в контроллере навигации на каждом из моих контроллеров. Я просто подозреваю, что во время работы есть только один контроллер навигации. Я точно не знаю, так ли это. –

ответ

0

This tutorial использует навигационные контроллеры на все контроллеры просмотра, но на самом деле не сказать, почему

Я просто использовать один навигационный контроллер, и она отлично работает для меня. Я использовал один и имел segues между несколькими viewControllers, включая несколько таблиц, а также с помощью кнопок в некоторых местах и ​​все еще мог легко перемещаться. В main.storyboard просто выберите первое представление, которое будет его частью, затем перейдите в Редактор> Вставить в> Контроллер навигации. Затем вы просто добавляете свои segues (я считаю, что все они должны быть Show (например, Push) segues для правильной работы). При запуске приложения должна быть панель вверху, которая может быть использована для возврата (вы также можете отредактируйте панель, добавив другие кнопки или изменив цвет и название).

Here's некоторые документы из яблока

+0

Недавно я нашел, что вложение каждого представления в контроллер навигации полезно при использовании tabBarCotroller вместе с навигационными контроллерами (см. ответ [здесь] (http://stackoverflow.com/questions/28994939/uitableview-in-uitableviewcontroller-behind-navigation-controller-on-initial-loa)) –

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