Я начинаю переводить больше структуры иерархии представления в IB.
У меня есть файл nib под названием "AlignmentViewController.xib", в котором я установил свою иерархию представлений с помощью AlignmentViewController в качестве владельца файлов. Это прекрасно работает.
Один из методов, по которым я остаюсь нечетким, - awakeFromNib. В следующем фрагменте кода AlignmentViewController я добавляю единственный дополнительный метод awakeFromNib. Однако он не получает вызов:
- (void)awakeFromNib {
NSLog(@"AlignmentViewController - awakeFromNib");
[super awakeFromNib];
}
- (id)initWithChromosomeName:(NSString *)chromosomeName
basepairStart:(NSUInteger)basepairStart
basepairEnd:(NSUInteger)basepairEnd {
self = [self initWithNibName:@"AlignmentViewController" bundle:nil];
if (nil != self) {
self.title = @"Alignment";
self.chromosomeName = chromosomeName;
self.basepairStart = basepairStart;
self.basepairEnd = basepairEnd;
self.wantsFullScreenLayout = YES;
}
return self;
}
Может кто-нибудь уточнить для меня, что я пропустил здесь?
Cheers, Дуг
UPDATE: После прочтения некоторых ответов, которые я понимаю, мне нужно разобраться в том, что является довольно фундаментальным.
Глядя на инициализацию:
- (id)initWithChromosomeName:(NSString *)chromosomeName
basepairStart:(NSUInteger)basepairStart
basepairEnd:(NSUInteger)basepairEnd {
self = [self initWithNibName:@"AlignmentViewController" bundle:nil];
Я замечаю, что я вызываю initWithNibName: bundle: косвенно. Это плохая практика? Файл AlignmentViewController.xib определяет мою иерархию представлений. Но я не использую initWithNibName: bundle: обычным способом? Есть ли лучший способ сделать это?