При запуске приложения на основе документа Какао сначала отображается окно выбора

Кажется, это должно быть легко, но я, должно быть, что-то упускаю. У меня есть приложение на основе документов. Я также построил новый XIB, на котором есть NSTableView и три кнопки, на которых я собираюсь отобразить список предыдущих файлов. Я хочу, чтобы этот XIB отображался вместо окна документа при первом запуске приложения. Как только пользователь выберет старый файл или нажмет кнопку «Новый», я хочу перейти в окно документа. Это очень распространено, и я видел, как используется довольно часто.

В своих попытках заставить это работать я модифицировал файл project-info.plist и изменил базовое имя файла Main NIB с MyDocument на мое имя Selection XIB. Это заставляет приложение отображать окно Selection вместо окна MyDocument. Похоже, что до этого момента проблем не было.

В моем окне выбора я настроил табличное представление, а также контроллер массива и пользовательский оконный контроллер только для этого XIB. Я установил владельца файла на новый контроллер окна и связал свойство окна контроллера окна с окном, а свойство делегата окна с владельцем файла, а также с кнопками «Выбрать», «Отменить» и «Создать». Ничего не привязано к NSApplication. Но странно то, что когда я запускаю это приложение, кажется, что оно хочет подключить эти контроллеры к NSApplication с ошибкой (то же самое для двух других кнопок):

Не удалось подключить действие selectButton: к цели класса NSApplication

Он также отображает ошибку, что NSApplication не соответствует ключу-значению для розетки, которая содержит ссылку на мой массив. Контроллер массива, окно и кнопки привязаны не к NSApplication, а к новому оконному контроллеру. Я ожидал, что, если возникнет какая-либо проблема, я НЕ упомяну NSApplication, а скорее оконный контроллер, к которому привязаны контроллеры.

Кто-нибудь знает, что здесь происходит? Это проблема Target-Action, потому что я изменил «Основное имя файла NIB» с «Главное меню» на «Выбор»? Если я не должен это менять, Роб

7
задан wattostudios 30 April 2012 в 13:58
поделиться