1

Мне нужен контроллер навигации через мой проект, и у моего приложения есть социальный логин. После проверки подлинности пользователь будет перенаправлен в другое представление, где я показываю tabbarcontroller с 2 вкладками.Как получить функциональность шаблона на основе навигации в программировании Swift

Я не знаю, как это сделать в программировании Swift. Я встроил свой контроллер view в контроллер навигации, отсюда, как только аутентификация будет успешной, как я могу нажимать пользователя на просмотр в виде табуляции? Вкладка также должна иметь навигацию.

+0

Проверьте это http://stackoverflow.com/questions/576764/tab-bar-controller-inside-a-navigation-controller-or-sharing-a-navigation-root – pedrouan

+0

@Dee - Вы попробовали мое решение ? –

+0

Нет, но я понял концепцию. Спасибо. – Dee

ответ

3

Я хотел бы воспроизвести вашу идею в том, что я обычно делаю в следующем примере.

Это как моя раскадровки выглядит следующим образом:

enter image description here

Как вы можете видеть, Логин/регистрация и панель вкладок не связана с какой-либо Segue.

Здесь Вход Контроллер навигации - это настройка начального контроллера.

Присвоить Это Навигационный контроллер Раскадровка ID (например, LoginNavigation):

Login NavigationController

Сделайте то же самое с Tab Bar Controller, назначить раскадровки ID (например, HomeTabBar)

TabBarController

Теперь вам просто нужно перетасовать Root View Controller приложения tween Login Nav и панель вкладок.

Таким образом, если пользователь успешно входит в систему, изменяет вид корня приложения к HomeTabBar используя следующий код:

let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
let home: UITabBarController = storyboard.instantiateViewControllerWithIdentifier("HomeTabBar") as! UITabBarController 
appDelegate.window?.rootViewController = home 

И когда пользователь входит в наш, снова изменить вид корневой на Вход нав:

let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
let entryPoint:UIViewController = mainStoryboard.instantiateViewControllerWithIdentifier("LoginNavigation") 
appDelegate.window?.rootViewController = entryPoint 

appDelegate определяется в моем constants.swift файле:

let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate 

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

  • Нет связанных вопросов^_^