Я создал пользовательский UIView, который я хотел бы использовать на нескольких различных контроллерах представления в моем приложении iPhone. В настоящее время я скопировал UIView, который содержит элементы управления из файла nib для первого контроллера представления, вставил его в другие контроллеры представления и затем связал все действия с каждым контроллером представления. Это прекрасно работает, но я не могу использовать этот пользовательский вид.
Мой пользовательский вид довольно прост, он состоит из нескольких кнопок UIB с метками, и нажатие на эти кнопки запускает действия, которые изменяют содержимое элементов управления в представлении моего контроллера представления.
Какова будет стратегия для консолидации определения и использования этого UIView? В идеале я хотел бы просто сослаться на это пользовательское представление из кончика контроллеров представления, и чтобы мой контроллер представления реагировал на действия из этого настраиваемого представления.
РЕДАКТИРОВАТЬ: ОК, основываясь на предложениях Дж.Биарда, я попробовал следующее без особой удачи.
Я создал другой файл пера на основе UIView с содержимым (на данный момент только некоторые объекты UIButton) моего многоразового представления и подклассами UIView .m и .h файлов, а затем установил класс Owner файла nib для моего вновь созданного имени класса.
Затем я добавил большую часть кода из J.Biard (я изменил прямоугольник на 50,50,100,100, на данный момент не включив setDelegate, так как сейчас я просто пытаюсь заставить его работать визуально, и я обнаружил, что [self.view addSubview: view] работал намного лучше, чем [self addSubView: view]) до конца метода viewDidLoad первого контроллера представления, который отображается при запуске приложения.
И теперь я вижу свой главный вид с черным квадратом. Я где-то пропустил розетку, или необходима инициализация в initWithFrame или drawRect в подклассе UIView?