我有一个窗口基于文档的应用程序,它加载了几个用作主视图的NSViewControllers。每个视图控制器都是一个独立的类,它处理某些业务需求,因此实现了工作所需的所有方法。
我的问题是如何在加载特定视图控制器时使工具栏工作。只要在窗口类中实现这些,我就没有问题将工具栏连接到委托并将工具栏项连接到操作。但是,如果我尝试在视图的loadView
方法上为工具栏项设置新操作,则工具栏项将忽略它并继续在主窗口类上调用该方法。
那么,如何动态更改工具栏项上的操作?
答案 0 :(得分:1)
你也在设定目标吗? (即[foo setTarget:]
除了[foo setAction:]
)
据推测,你的窗口控制器有某种currentViewController
ivar / property?最好不要在切换视图控制器时重新分配工具栏操作,而是使用窗口控制器在当前活动的视图控制器上传递它们。