2011-06-26 20 views
1

我有一个窗口基于文档的应用程序,该应用程序加载了几个用作主视图的NSViewController。每个视图控制器都是一个自包含的类,它处理特定的业务需求,并实现所有必需的工作方法。将工具栏与多个NSViewControllers一起使用

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

那么,如何动态地改变工具栏上的动作呢?

+1

您使用哪些代码为'设置工具栏项目的新动作'?你也在设定目标吗?动作响应链中的视图控制器? – 2011-06-26 23:29:54

回答

1

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

大概你的窗口控制器有某种currentViewController ivar/property?在切换视图控制器时最好不要重新分配工具栏操作,而应使用窗口控制器在当前活动的视图控制器上传递它们。

相关问题