В сообщении Использование initWithNibName абсолютно ничего не меняет , он как два использования одного и того же определения View Nib, в первом случае он просто вызывает alloc / init, а во втором он указывает initWithNibName.
Итак, хотя это всегда работает:
MyViewController * vctrlr = [[MyViewController alloc] initWithNibName: @ "MyViewController" bundle: nil];
[self.navigationController pushViewController: vctrlr animated: YES];
[vctrlr release];
Следующее работает для всех контроллеров представления, которые я унаследовал, но не для меня!
TheyViewController * vctrlr = [[выделение ихViewController] инициализация];
[self.navigationController pushViewController: vctrlr animated: YES];
[vctrlr release];
Новичок в программировании для iOS, я унаследовал некоторый код. Все представления контроллеров представления определены в IB, но было непоследовательное выделение / инициализация создания этих контроллеров представления. Я создал новый контроллер представления и XIB, но он не будет работать, если я не использую initWithNibName (он дает сбой, когда я нажимаю контроллер представления на контроллер навигации). Я не могу сказать, чем мой контроллер представления отличается от других ... есть подсказки? Мне удалось удалить использование initNibName для всех других контроллеров представления в приложении, кроме моего.