Программно изменить соединение, выполненное в IB (OSX) - PullRequest
1 голос
/ 03 апреля 2011

У меня есть простое приложение Core Data на основе документов (построенное на стандартных уроках Apple).На данный момент у меня есть кнопка, связанная с add: метод контроллера (Sheet Controller), который выпадает вниз модальный лист из главного окна документа.Соединение устанавливается в IB (см. Ниже из MyDocument.xib).Существует также еще один контроллер (Another Controller)

IB Connections

Мой вопрос заключается в том, как программно изменить метод действия кнопок, чтобы он указывал на метод в «другом контроллере» вместо «Контроллер листов подключен в IB

Большое спасибо

1 Ответ

2 голосов
/ 03 апреля 2011

Просто используйте методы NSControl setTarget и setAction.

Там - это какая-то особая магия, связанная с тем, что соединения в первую очередь соединяются вместе, но как только они все подключены в работающем приложении, соединение становится соединением, независимо от того, как оно было изначально создано.

Хотя - стоит подумать, не могли бы вы позволить цепочке респондентов позаботиться о вещах, а не явно перенаправить действие самостоятельно. Это, по крайней мере частично, для этого ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...