我自横刀向天笑,去留肝胆两昆仑。这篇文章主要讲述如何从app delegate访问NSViewController?相关的知识,希望能为你提供帮助。
在我的macOS应用程序中,我有菜单项,它们也在主UI中复制。应用程序由主窗口及其委托和单个视图及其视图控制器组成。在app delegate我捕获菜单项单击操作,然后我需要将此事件发送到我的视图控制器,以便采取适当的操作并更新主UI。
问题是如何从app delegate访问我的视图控制器(NSViewController
)?
答案实际上,您不需要对控制器的引用。有First Responder
- 宣布
IBActions
- 在Interface Builder中,将菜单项连接到目标对象的First Responder(红色多维数据集),然后选择相应的操作。
另一答案如果你有
window
作为IBOutlet
你可以做var rootViewController: MyViewController? {
return window!.contentViewController as? MyViewController
}func sendPressed(_ sender: Any?) {
rootViewController?.sendPressed()
}
【如何从app delegate访问NSViewController()】如果你没有
window
变量,你可以通过它NSApplication.shared.orderedWindows.first!
推荐阅读
- Mac中的Android工作室路径错误
- 如何从Android中的图像数组创建视频()
- android异常,即使jdom库存在
- 如何使用Android SDK Manager安装NDK
- 关于在app store上处理iAP成功的问题
- React app无法登录到控制台或终端窗口
- Dapper mapping会抛出无效的强制转换
- application.properties中的SpringBoot未知属性
- 运行Spring Boot APP时出现Spring Boot问题