У меня есть пользовательский объект UIView
с наконечником
, который определяет макет представления / подпредставления. Мои розетки подключены, и когда я инициализирую объект из initWithFrame:
, все в порядке.
У меня проблема, когда я использую IB для встраивания UIView
в другое перо; появляется пользовательский UIView
, но ни одно из содержащихся в нем вложенных представлений не появляется - фактически все их символы сводятся к нулю. У меня очень минимальная реализация initWithCoder:
и awakeFromNib:
(только ведение журнала), и я понимаю, что когда перо десериализуется, подвиды должны, по крайней мере, инициализироваться во время процесса?
Единственный вывод, к которому я прихожу сам, - это то, что происходит одно из двух: либо мои ссылки на розетки повреждены / не работают и не работают, либо мое понимание процесса загрузки из пера неверно, и я я что-то упускаю.
Заранее спасибо!
Редактировать: (Код отправлен для Nekto по запросу ... как вы увидите, он ведет журнал и все, хех.)
- (id)initWithCoder:(NSCoder *)aDecoder {
if ((self = [super initWithCoder:aDecoder])) {
NSLog(@"ThumbnailGridView.initWithCoder frame= %f, %f", self.frame.size.width, self.frame.size.height);
}
return self;
}
- (void)awakeFromNib
{
NSLog(@"ThumbnailGridView:awakeFromNib");
}
Редактировать 2: Перья, контроллеры, подвиды и т. Д.
Перья: У меня есть одно перо, содержащее UIView. Этот UIView содержит единственный UIScrollView, который заполнен сеткой UIViews, определенных в другом пере.(Примечание: эта часть работает нормально, поскольку заливка выполняется программно и работает с вызовом initWithFrame :.) Проблема здесь в том, что символ UIScrollView равен нулю после вызова initWithCoder: и awakeFromNib:, поэтому объекты просто добавляются в ноль и ничего не происходит. Если бы символ scrollview не был нулевым, я уверен, что это сработает.
Контроллеры: есть два контроллера, которые используют это, один создан с помощью initWithFrame: и работает отлично, другой встраивает его как ссылку на основе пера. (Как упоминалось в другом месте здесь, определение UIView в IB, установка пользовательского класса.) Я прошел через код, и это представление - правильно инициализируется - только его подвиды «отсутствуют».
Помогает ли это дать более четкое представление о ситуации?