Objective c 将工具栏与多个NSViewController一起使用
我有一个基于单窗口文档的应用程序,它加载几个作为主视图的NSViewController。每个视图控制器都是一个自包含的类,用于处理某些业务需求,并实现工作所需的所有方法 我的问题是如何在加载特定视图控制器时使工具栏工作。只要在window类中实现,我就可以将工具栏连接到委托,将工具栏项连接到操作。但是,如果我试图在视图的Objective c 将工具栏与多个NSViewController一起使用,objective-c,cocoa,nsviewcontroller,nstoolbar,nstoolbaritem,Objective C,Cocoa,Nsviewcontroller,Nstoolbar,Nstoolbaritem,我有一个基于单窗口文档的应用程序,它加载几个作为主视图的NSViewController。每个视图控制器都是一个自包含的类,用于处理某些业务需求,并实现工作所需的所有方法 我的问题是如何在加载特定视图控制器时使工具栏工作。只要在window类中实现,我就可以将工具栏连接到委托,将工具栏项连接到操作。但是,如果我试图在视图的loadView方法上为工具栏项设置一个新操作,工具栏项就会忽略它,并继续在主窗口类上调用该方法 那么,如何动态更改工具栏项目上的操作呢?您是否也在设置目标?(即除了[foo
loadView
方法上为工具栏项设置一个新操作,工具栏项就会忽略它,并继续在主窗口类上调用该方法
那么,如何动态更改工具栏项目上的操作呢?您是否也在设置目标?(即除了
[foo setAction:
之外的[foo setTarget:][foo setTarget:][/code>)
您的窗口控制器大概有某种currentViewController
ivar/属性?切换视图控制器时,最好不要重新分配工具栏操作,而是使用窗口控制器将其传递到当前活动的视图控制器上。是否也设置了目标?(即除了[foo setAction:
之外的[foo setTarget:][foo setTarget:][/code>)
您的窗口控制器大概有某种currentViewController
ivar/属性?切换视图控制器时,最好不要重新分配工具栏操作,而是使用窗口控制器将它们传递到当前活动的视图控制器上。您使用什么代码“为工具栏项目设置新操作”?你也设定了目标吗?视图控制器是否在操作响应器链中?您使用什么代码“为工具栏项设置新操作”?你也设定了目标吗?视图控制器是否在动作响应器链中?