Где мне разместить свой код, который создает UIBarButtonItem и присваивает его self.navigationItem.rightBarButtonItem? В initWithNibName или viewDidLoad?
UIBarButtonItem
self.navigationItem.rightBarButtonItem
initWithNibName
viewDidLoad
РЕДАКТИРОВАТЬ: я должен уточнить, что я загружаю NIB из Interface Builder.
viewDidLoad является правильным местом для программного создания кнопки независимо от того, загружаете ли вы NIB из Interface Builder или нет.
Из класса UIViewController документация по методу viewDidLoad
UIViewController
Этот метод вызывается после того, как контроллер представления загрузил связанные виды в память.Этот метод вызывается независимо от того, были ли представления сохранены в файле пера или созданы программно в методе loadView.Этот метод чаще всего используется для выполнения дополнительных шагов инициализации для представлений, загружаемых из файлов пера.
В - (void) loadView, если вы делаете это прагматично. В противном случае поступайте так, как предлагает Рог.
- (void) loadView