Пользовательский UIView, построенный с помощью интерфейса Builder, доступный/позиционируемый через Interface Builder

Это не должно сбивать с толку. У меня есть пользовательский UIView с связкой на элементах управления на нем. UILabels, кнопки и т.д. Я создал этот Nib с помощью Interface Builder. Я хочу иметь возможность позиционировать этот пользовательский uiview на другом UIView с помощью конструктора интерфейса.

Как связать свой пользовательский класс UIView с nib? initWithCoder получает вызов, но я хочу, чтобы этот класс загружался из nib.

Спасибо

+6
источник поделиться
4 ответа

Чтобы это работало, вы должны создать плагин для Interface Builder, который использует ваш собственный класс управления. Как только вы создадите и установите свой плагин, вы сможете добавлять и перетаскивать экземпляры своего представления в другое окно или представление в Интерфейсном Разработчике. Чтобы узнать о создании плагинов IB, см. Руководство по программированию плагинов Interface Builder и главу по созданию собственных элементов управления палитрой IB из книги Аарона Хиллегаса " Программирование cocoa для Mac OS X".

Вот ссылка на оригинального автора принятого ответа на аналогичный вопрос.

+3
источник

Вам нужно только создать плагин, если вы хотите, чтобы пользовательский вид правильно рисовал в nib, который вы используете. Вы можете создать собственный элемент управления, а затем показать его как пустой прямоугольник, пока он не будет создан при запуске прямо сейчас.

Как мне получить представление в Interface Builder для загрузки пользовательского представления в другом банке?

+2
источник
другие ответы

Связанные вопросы


Похожие вопросы

Вы можете вставить объект UIViewController с помощью Interface Builder, а затем установить свойство UIViewController "Имя нити". Я не знаю, если это испортит вашу модель, но я думаю, что это единственный способ сделать то, что вы пытаетесь сделать.

0
источник

В IB поднимите инструмент Identity Inspector (Command-4), затем выберите свое собственное представление, а во всплывающем окне "Класс" выберите имя своего пользовательского класса вместо общего UIView. Возможно, вы захотите также подключить его к ивару. В вашем ViewController объявите экземпляр вашего пользовательского класса с IBOutlet перед ним. Затем вернитесь и вызовите Инспектор подключений и подключите свое видение к ivar путем перетаскивания мышью из выпадающего меню с настраиваемым представлением для владельца файла (который должен быть экземпляром вашего ViewController) и выбора имени ivar.

Когда ваш NIB загружен, он должен создать объект этого типа и подключить его к этой переменной.

0
источник

Посмотрите другие вопросы по меткам или Задайте вопрос