Я создал собственное представление, которое загружает его содержимое из пера, например:
/* PricingDataView.h */
#import <UIKit/UIKIt.h>
@interface PricingDataView : UIView {
UIView *contentView;
}
@property (nonatomic, retain) IBOutlet UIView *contentView;
@end
/* PricingDataView.m */
#import "PricingDataView.h"
@implementation PricingDataView
@synthesize contentView;
- (id)initWithFrame:(CGRect)frame {
if ((self = [super initWithFrame:frame])) {
[[NSBundle mainBundle] loadNibNamed:@"PricingDataView" owner:self options:nil];
[contentView setFrame:frame];
[self addSubview:contentView];
}
return self;
}
/* ... */
В файле пера я установил PricingDataView
в качестве типа владельца файла , и подключил выход contentView
в IB. Я поместил обычный UIView
из библиотеки интерфейсов в полноразмерное представление, отображаемое пользователю, а затем изменил имя его класса на PricingDataView
. Все это собирается, но во время выполнения ничего не отображается там, где должен быть мой пользовательский вид.
Я поставил точки останова в PricingDataView.initWithFrame
, но они не попадают, поэтому я знаю, что мне не хватает чего-то, что могло бы вызвать инициализацию представления. Что меня интересует, так это то, что в процессе загрузки других моих представлений из перьев вся инициализация происходит для меня, но не с этим. Зачем?