Какие свойства UIViewController я должен установить в -initWithNibName:bundle: vs. -viewDidLoad?
Я понимаю, что я должен установить self.title
в -initWithNibName:bundle:
,
Как насчет
self.navigationItem.titleView
?поскольку
self.navigationItem.titleView
кажется, используется только тогда, когдаself.view
загружен, я думаю, я должен, чтобы сохранить память, установитьself.navigationItem.titleView
в-viewDidLoad
и ноль это в-viewDidUnload
Например:- (void)viewDidLoad { [super viewDidLoad]; self.navigationItem.titleView = [[UIImageView alloc] initWithImage: [UIImage imageNamed:@"logo.png"]]; } - (void)viewDidUnload { self.navigationItem.titleView = nil; [super viewDidUnload]; }
Как насчет
self.navigationItem.backBarButtonItem
?
1 ответ
Кажется, работает нормально, чтобы установить
self.navigationItem.titleView
в-viewDidLoad
и ноль это в-viewDidUnload
,Вы должны установить
self.navigationItem.backBarButtonItem
в-initWithNibName:bundle
потому что если вы нажимаете два контроллера представления без анимации-viewDidLoad
не будет вызван для первого выдвинутого контроллера представления. Итак, если этот контроллер представления устанавливаетself.navigationItem.backBarButtonItem
в-viewDidLoad
, на самом деле он не будет установлен, и кнопка "Назад" на втором контроллере представления будет просто по умолчанию использовать заголовок первого контроллера представления, как обычно.