Swift / macOS Есть ли способ указать существующий WindowController при добавлении окна с вкладками? - PullRequest
0 голосов
/ 15 февраля 2020

Я пытаюсь создать приложение MacOS для ПК с вкладками. Мне удалось реализовать добавление или закрытие вкладки с помощью нескольких функций AppDelegate, хотя при переключении вкладок я теряю стилизацию родительского окна. См. Здесь.

Это код, который я сейчас использую для отображения новой вкладки:

@IBAction func newTab(_ sender: Any) {
    let currentVC = AppDelegate.getCurrentViewController()
    //Check current Window
    if currentVC?.identifier?.rawValue=="dashboardController"{
        //Create new Tab
        let currentWindow = AppDelegate.getCurrentWindow()
        let currentWindowCtrl = AppDelegate.getCurrentWindowController()
        let newWindow = NSWindow(contentViewController: (NSStoryboard(name: "Main", bundle: nil).instantiateController(withIdentifier: "dashTab") as! DashboardViewController))
        currentWindow?.addTabbedWindow(newWindow, ordered: .above)
    }
}

Есть ли способ решить эту проблему? Я пока искал inte rnet безрезультатно: - (

Кажется, что ViewController сохранен, однако я теряю панель инструментов и темный стиль и т. Д. c. Кажется, создается пустое окно Я также пытался создать из .xib, но это приводит к созданию независимого окна, а не окна с вкладками, как это.

...