2008-09-08 7 views
8

Когда вы рекомендуете интегрировать пользовательский вид в Interface Builder с подключаемым модулем? Когда скользя через Apple, Interface Builder Plug-In Programming Guide я нашел:Когда создавать плагин Interface Builder для пользовательского представления?

  • Ваши пользовательские объекты собираются использовать только одно приложение?
  • Выполняют ли ваши пользовательские объекты информацию о состоянии, найденную только в вашем приложении?
  • Будет ли проблематично инкапсулировать ваши пользовательские представления в автономной библиотеке или структуре?

Если вы ответили «да» на любой из предыдущих вопросов, ваши объекты могут не быть хорошими кандидатами для плагина.

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

ответ

9

Совершенно разумно нажимать классы просмотра и контроллера, которые ваше приложение использует в отдельной структуре, встроенные в оболочку приложения, для которых вы также создаете подключаемый модуль Interface Builder.

Среди других причин классы, которые обычно используются в вашем приложении, затем могут быть сконфигурированы с точки зрения их использования в Interface Builder, а не в разбросанных версиях -awakeFromNib. Это также единственный способ, которым ваши объекты могут выставлять привязки, которые можно настроить в Interface Builder.

Это немного кодирование, но для классов просмотра и контроллера, которые используются в нескольких местах, и которые требуют дополнительной настройки до их фактического использования, вы, вероятно, сохраните совокупность времени в целом. И ваш опыт, развивающийся с помощью вашего собственного класса управления и просмотра, будет похож на разработку с помощью Cocoa.

+0

Согласен. Но я бы добавил классы представления непосредственно в целевое приложение, а не в отдельную структуру, даже если он встроен в пакет приложений. – Sven 2010-09-09 11:36:28

2

Я думаю, что руководство Apple подводит итог.

Если вы пишете элемент управления, который будет использоваться в нескольких приложениях и является полностью общим, то создание настраиваемого объекта - хорошая идея. Вы сможете визуализировать внешний вид и установить свойства непосредственно из Interface Builder.

Если ваш элемент управления ограничен одним приложением или плотно связан с вашими данными, то его перемещение в пользовательский объект действительно не будет вас очень сильно покупать.

Нетрудно создать пользовательский вид, там есть много простых руководств.