Начать просмотр раскадровки в UITabBar - PullRequest
0 голосов
/ 24 мая 2018

Я пытаюсь программно запустить UIView в UITabBarController в другом файле раскадровки.

В WelcomeVC.swift он не имеет UITabBar и живет в Main.storyboard.Он вызывает UITabBar ViewController при нажатии кнопки UIB

@objc func startMatching(sender: UITapGestureRecognizer){
    let storyBoard: UIStoryboard = UIStoryboard(name: "Test", bundle: nil)
    let pdv = storyBoard.instantiateViewController(withIdentifier: "AVC") as! AVC
    self.present(pdv, animated: true, completion: nil)
}

In Test.storyboard, он содержит 1 UITabBarController и 2 контроллера представления: AVC и BVC.Они оба функционируют так, как задумано, если мы вызовем для них present (), но UITabBar не отображается.

Как заставить контроллер вкладок отображаться?

1 Ответ

0 голосов
/ 24 мая 2018

Вы должны представить UITabBarViewController, дать ему идентификатор раскадровки и представить его, а не представить AVC напрямую

let storyBoard: UIStoryboard = UIStoryboard(name: "Test", bundle: nil)
let pdv = storyBoard.instantiateViewController(withIdentifier: "TabBarViewController") as! UITabBarViewController
self.present(pdv, animated: true, completion: nil)
...