私はこのようにやっています:
NSArray* nibViews = [[NSBundle mainBundle] loadNibNamed:@"MyCustomView" owner:nil options:nil];
self = [nibViews objectAtIndex: 0]; //here it would be best practice to loop through nibViews and get the first view that is member of your class.
また、nib ファイルのビューはMyCustomView
ではなくとして設定されますUIView
。これらの 2 行の後に、必要な値を設定できます。ただし、たとえばスーパーのフレームを設定すると、xib ファイルの値によって上書きされることに注意してください。そのため、ペン先をロードする前ではなく、ロードした後にすべてを設定することをお勧めします。
私の知る限り、そのままUIView
ロードするviewDidLoad
ためのコールバックはありませんUIViewController
。
お役に立てれば。
乾杯!
編集:
次のようなことができます。
- (id)initWithInfo:(MyInfoClass *) selectedInfo Body:(NSString *) _body
{
if ((self = [super init]))
{
NSArray* nibViews = [[NSBundle mainBundle] loadNibNamed:@"MyCustomClass" owner:nil options:nil];
self = [nibViews objectAtIndex: 0];
[self setInfo:selectedInfo];
[self setBody:_body];
}
}
そして、そのinitWithInfo: Body:
方法を使用するだけです。