Cocoa 以编程方式更改在IB(OSX)中建立的连接

Cocoa 以编程方式更改在IB(OSX)中建立的连接,cocoa,macos,Cocoa,Macos,我有一个简单的基于文档的核心数据应用程序(围绕标准苹果教程构建)。目前,我有一个按钮连接到一个控制器(Sheet controller)的add:方法,该控制器从主文档窗口中下拉一个模式表。连接是在IB中进行的(参见下面的MyDocument.xib)。还有另一个控制器(另一个控制器) 我的问题是,如何通过编程将按钮操作方法更改为指向“另一个控制器”中的方法,而不是IB中的“连接到的板材控制器” 非常感谢只需使用setTarget和setAction方法即可 首先,让连接连接在一起有一些特殊的

我有一个简单的基于文档的核心数据应用程序(围绕标准苹果教程构建)。目前,我有一个按钮连接到一个控制器(Sheet controller)的add:方法,该控制器从主文档窗口中下拉一个模式表。连接是在IB中进行的(参见下面的MyDocument.xib)。还有另一个控制器(另一个控制器)

我的问题是,如何通过编程将按钮操作方法更改为指向“另一个控制器”中的方法,而不是IB中的“连接到的板材控制器”

非常感谢

只需使用
setTarget
setAction
方法即可

首先,让连接连接在一起有一些特殊的魔力,但是一旦在运行的应用程序中连接好,连接就是一个连接,不管它最初是如何建立的


不过,您是否可以允许用户自己处理事情,而不是自己明确地重新确定操作的目标,这是值得考虑的。至少在某种程度上,这就是它的目的……

是避免混合IB和编程绑定的明智方法。只需使用IB来布置单独的视图,但实例化视图控制器并手动将所有绑定附加到视图?@AJ的观点不同,但我认为两者都可以。出于纯粹主义的原因而拒绝IB的便利性似乎是自食其果。