0

Я узнал о том, когда использовать WindowController и когда добавлять вещи в объект Document. Похоже, что документ может работать нормально как контроллер, если у вас простой интерфейс. У меня есть простой интерфейс в моем приложении, но насколько хорошей практикой является размещение выходов IB в WC? Каким будет сценарий, когда вы НЕ хотите использовать WC?Уточнение использования оконного контроллера

+0

Я обычно храню все в документе и избегаю настраиваемых оконных контроллеров, если на одном документе есть только одно окно. – ughoavgfhw

+0

спасибо, @ughoavgfhw. Как вы ссылаетесь на текущее окно из NSDocument? Вы бы использовали '[[[self windowControllers] objectAtIndex: 0] window]' вместо 'self'? – janeh

+0

Это сработает, но обычно лучше использовать '[self windowForSheet]'. Его легче написать, и если вы будете использовать несколько окон в будущем, он автоматически выберет самый передний. – ughoavgfhw

ответ

0

Вот несколько сценариев:

  1. Объект документа вы собираетесь использовать с несколькими окнами (как комментатор отмечался выше) или имеющим различные точки зрения
  2. Объект документа вы могли бы потенциально открытые и процесс без отображения окна на всех
  3. Приложение с таким кодом контроллера, что трудно управлять с помощью одного класса

Во окна initializatio n, документ создаст оконный контроллер.

После этого часть точки разделения контроллера модели и контроллера просмотра удаляет зависимость документа от окна.

Как вы уточните свой проект, взгляните на места, где документ нуждается в доступе к окну, и подумайте, можно ли реализовать эту функцию другим способом, например, обработкой его в оконном контроллере вместо документа ,

Смежные вопросы