Интерфейсный Разработчик не соединяет кнопку, но учебник говорит, что это должно работать - PullRequest
0 голосов
/ 26 ноября 2009

Я пытался изучить Core Data, и просмотр вопросов о переполнении стека привел меня к рекомендации, что я попробую учебник по Core Data в Cocoa Dev Central ( Link ).

В этом уроке все имеет смысл, но когда я перешел к шагу 16, мне не удалось подключить кнопку + к контроллеру массива Posts. Я вернулся и прошел двойную проверку каждого шага по пути и не вижу, где что-то не так, но это все равно не позволит мне подключиться. Я использую последние версии Xcode и Interface Builder (просто повторно загрузил их на прошлой неделе); это может быть проблема совместимости версий?

Добавление

Кажется, что проблема была в том, что мне пришлось изменить имя, изменив класс в инспекторе, и это удалило действия по умолчанию для контроллера массива. Изменение класса обратно на NSArrayController восстанавливает функциональность, но теперь он появляется как «Array Controller», где бы он ни появлялся, что кажется проблематичным с 3-мя контроллерами в игре, когда я исправляю контроллеры Authors и Topics.

Ответы [ 2 ]

1 голос
/ 26 ноября 2009

Исходя из ваших комментариев, вы изменили класс контроллера Posts с NSArrayController на собственный класс с именем Posts. Разработчик интерфейса не смог найти реализацию для этого пользовательского класса, поэтому не показал никаких действий или выходов, доступных для привязки.

Изменение класса обратно на NSArrayController устранило проблему.

(Построитель интерфейса позволяет вам делать это, так как вы можете определить свой собственный пользовательский контроллер. Вы можете добавить действия и выходы к объекту в IB, затем сгенерировать класс и добавить реализацию в XCode. Это очень полезно - но может запутать новых пользователей инструмента.)

1 голос
/ 26 ноября 2009

Понял. Под инспектором используйте «Имя», чтобы изменить имя объекта, а не «Класс». Ошибка новичка.

...