1

我有一个基于文档的单窗口应用程序,它加载了几个用作主视图的 NSViewController。每个视图控制器都是一个自包含的类,它处理某些业务需求,因此实现了工作所需的所有方法。

我的问题是如何在加载特定视图控制器时使工具栏工作。只要这些是在窗口类中实现的,我就可以将工具栏连接到委托,并将工具栏项连接到操作。但是,如果我尝试在loadView视图的方法上为工具栏项设置新操作,则工具栏项会简单地忽略它并继续在主窗口类上调用该方法。

那么,如何动态更改工具栏项上的操作?

4

1 回答 1

1

你也在设定目标吗?(即[foo setTarget:]除了[foo setAction:]

大概您的窗口控制器具有某种currentViewControllerivar/属性?切换视图控制器时最好不要重新分配工具栏操作,而是使用窗口控制器将它们传递给当前活动的视图控制器。

于 2011-06-27T01:41:00.407 回答