Я пытаюсь сделать что-то действительно сложное, и я все еще застрял в точке. Я пытаюсь указать UIViewController
с файлом Nib, унаследованным от другого UIViewController
с другим файлом Nib.
Проблема в том, когда я создаю экземпляр своего сына UIViewController
.UIViewController with Nib File and Inheritance
// SonViewController
- (id)initWithNibName:(NSString *)nibNameOrNil
bundle:(NSBundle *)nibBundleOrNil
{
if ((self = [super initWithNibName:nibNameOrNil
bundle:nibBundleOrNil])) {
// Custom initialization.
}
return self;
}
Метод инициализации initWithNibName:bundle:
должен вызвать super class
но только назвать свой собственный файл острия. В супер-класса, я попытался переопределить метод initWithNibName:bundle:
и поставить nibName себя так:
// MotherViewController
- (id)initWithNibName:(NSString *)nibNameOrNil
bundle:(NSBundle *)nibBundleOrNil
{
if ((self = [super initWithNibName:@"MotherViewController"
bundle:nibBundleOrNil])) {
// Custom initialization.
}
return self;
}
Это только инициализации и отображения Mother Class
и его IB объект. Я понимаю, почему, но я начинаю думать, что невозможно делать то, что я хочу. Любое предложение ?
Edit:
Я хотел бы использовать мой SonViewController просто так:
SonViewController *son = [[SonViewController alloc]
initWithNibName:@"SonViewController" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:son animated:YES];
[son release];
Он должен показывать сына и мать IB объект ...
С уважением,
kl94
Как вы сказали, это очень старое сообщение. НО теперь, из-за вас, я/Мы знаем, как создать 2 контроллера представления с 2 xib и сделать их наследуемыми от другого. Спасибо – klefevre