我在 Swift 4 中开发一个 osx 应用程序以显示在菜单栏中,并在单击时调用一个弹出窗口以显示许多不同的视图。
我在 Storyboard 中的结构是: NSView > Container View > Tab View
这让我可以在能够在选项卡之间切换的同时维护一个顶部菜单栏。
我隐藏了 NSTabView 中的按钮,并设法使用以下代码在加载视图之间进行更改:
import Cocoa
class TabViewController: NSTabViewController {
@IBOutlet weak var theFirstTab: NSTabViewItem!
override func viewDidLoad() {
super.viewDidLoad()
changeTab()
}
func changeTab() {
let theTabView = theFirstTab.tabView
theTabView?.selectTabViewItem(at: 3)
}
}
当我启动我的应用程序时,它会以编程方式加载第三个选项卡,这很棒!
然而,我想要做的是在父 ViewController 中创建我自己的菜单来调用这个函数,以便标签在容器中发生变化。
是否可以以某种方式从父级调用此函数?
我已经到处寻找解决这个问题的方法,并且非常接近,但希望这里有人可以帮助我。如果不够清楚,我可以添加我的故事板的图片吗?
提前致谢。