gpt4 book ai didi

swift - 如何从应用程序委托(delegate)访问 NSViewController?

转载 作者:搜寻专家 更新时间:2023-10-31 22:38:26 24 4
gpt4 key购买 nike

在我的 macOS 应用程序中,我有菜单项,它们也在主 UI 中复制。应用程序由主窗口及其委托(delegate)和单个 View 及其 View Controller 组成。在 App Delegate 中,我捕获菜单项的点击操作,然后我需要将此事件发送到我的 View Controller ,以便采取适当的操作并更新主 UI。

问题是如何从应用委托(delegate)访问我的 View Controller (NSViewController)?

最佳答案

如果你有 window 作为 IBOutlet 你可以做

var rootViewController: MyViewController? {
return window!.contentViewController as? MyViewController
}

func sendPressed(_ sender: Any?) {
rootViewController?.sendPressed()
}

如果你没有window变量你可以通过

NSApplication.shared.orderedWindows.first!

关于swift - 如何从应用程序委托(delegate)访问 NSViewController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52234859/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com