Встраивание UISplitViewController в UITabBarController

#uitabbar #uisplitviewcontroller #tabbar

Вопрос:

Я не уверен, как встроить UISplitViewController в мой контроллер панели вкладок со следующей настройкой контроллера панели вкладок:

 class ClientUserTabBarController: UITabBarController {
    
    ///View did load:
    override func viewDidLoad() {
        super.viewDidLoad()
        
        setAppearance()
        setupTabBarTabs()
    }

    ///Set tab bar appearance:
    func setAppearance() {
        let appearance = tabBar.standardAppearance
        appearance.shadowImage = nil
        appearance.shadowColor = nil
        tabBar.standardAppearance = appearance
    }

    ///Setup dynamic tabs:
    func setupTabBarTabs() {
        
        let home = UINavigationController(rootViewController: HomeVC())
        let messages = UINavigationController(rootViewController: ChatVC())
        let discover = UINavigationController(rootViewController: DiscoverVC()) 
        let calendar = UINavigationController(rootViewController: CalendarVC())
        let userProfile = UINavigationController(rootViewController: ProfileVC())
      
        let controllers = [home, discover, calendar, chat, userProfile]

        for vc in controllers {
            vc.view.setMainBackgroundColor()
            vc.navigationBar.isOpaque = false
            vc.navigationBar.tintColor = .label
            vc.navigationBar.isTranslucent = false
            vc.navigationBar.barTintColor = UIColor(named: "customBackgroundControl")
            vc.navigationBar.titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.label, NSAttributedString.Key.font: Fonts.createBoldSize(18)]
            vc.navigationBar.largeTitleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.label, NSAttributedString.Key.font: Fonts.createBoldSize(34)]
        }
        viewControllers = controllers
        
        viewControllers?.forEach {
            if let navController = $0 as? UINavigationController {
                let _ = navController.topViewController?.view
            } else {
                let _ = $0.view.description
            }
        }
    }
 

С чего бы мне вообще начать? Вся документация по этому вопросу, похоже, основана на отсутствии панели вкладок… но все же у вас есть такие приложения, как Twitter, в которых теперь есть UIDevice.current.orientation == .LandscapeRight amp; .LandscapeLeft, полностью создающие контроллер разделенного представления на вкладке «сообщения» панели управления.