Когда мне нужно вызвать - [UIViewController initWithNibName: bundle:]?

В сообщении Использование 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 для всех других контроллеров представления в приложении, кроме моего.

6
задан Community 23 May 2017 в 10:29
поделиться