Я хочу внести изменения в UINavigationBar
Недвижимость программно. - viewDidLoad:
или -initWithNibName:
- лучшее место для этого и почему?Лучшее место для изменения собственности UINavigationBar?
ответ
– viewDidLoad
- идеальная функция для выполнения таких изменений.
Как следует из названия, представление будет полностью загружено в память при вызове этой функции и не должно быть проблемой для внесения таких изменений.
Я бы не предложил делать такие изменения в – viewWillAppear:
или – viewDidAppear:
, поскольку они будут вызываться каждый раз, когда появляется представление. Это было бы полезно, если бы вы хотели изменить свойства панели навигации каждый раз, когда она появляется. Я думаю, что ситуация крайне маловероятна и поэтому предлагает – viewDidLoad
, поскольку она будет называться только один раз.
-initWithNibName:
создаст экземпляр вашего контроллера из файла nib. Вы можете выполнять операции, о которых вы упомянули в этой функции, но есть вероятность, что она может иногда звучать странно, поскольку она может быть не в правильном состоянии. Даже Apple Docs предлагает "If you want to perform additional initialization after the nib file is loaded, override the viewDidLoad method and perform your tasks there."
Если ваш видКонтроллеры имеют другое свойство navigationBar, вы можете изменить их следующим образом. В подклассе UIViewController следующие методы:
- (void) viewWillDisappear: (BOOL) animated
{
[super viewWillDisappear: animated];
[self.navigationItem setTitleView: nil];
}
- (void) viewDidAppear:(BOOL)animated
{
[super viewDidAppear: animated];
[self.navigationItem setTitleView: titleView];
}
Это работает.
- 1. Лучшее имя для собственности?
- 2. Лучшее место для документации NHibernate?
- 3. Лучшее место для размещения onSharedPreferenceChangeListener
- 4. Лучшее место для размещения констант
- 5. Лучшее место для Rails ParameterMissing
- 6. Лучшее место для использования MySqlHelper.EscapeString
- 7. Лучшее место для инициализации MobileServicesClient
- 8. Лучшее место для обучения SSIS
- 9. Где лучшее место для ... [iPhone]
- 10. Лучшее место для размещения XSD
- 11. Лучшее место для реализации ko.applyBindings
- 12. Лучшее место для загрузки файлов для скачивания
- 13. Лучшее место для хранения массива в Laravel
- 14. Где лучшее место для размещения пользовательских разработок
- 15. Титан: Лучшее место для хранения секретных файлов
- 16. Лучшее место для хранения альтернативных имен?
- 17. Лучшее место для установки инициализации в SailsJS
- 18. Лучшее место для хранения временной строки?
- 19. Лучшее место для установки или обновления NodeJS
- 20. Лучшее место для хранения содержимого приложения
- 21. Лучшее место для вызова беседки из грааля
- 22. Лучшее место для применения преобразования ответа API
- 23. Лучшее место для прикрепления onClickListener в recyclerview
- 24. Лучшее место для добавления аналитики в ApostropheCMS
- 25. Какое лучшее место для реализации транзакции SQL?
- 26. Лучшее место для файлов ant build.xml?
- 27. C++: Лучшее место для включения файлов заголовков
- 28. Лучшее место для хранения больших XML-данных
- 29. Лучшее место для log.conf в пакете python
- 30. Какое лучшее место для начала изучения Qt?
программно означает везде, где вы можете его изменить –
Я знаю это, но я спросил, что является лучшим местом. –
Какие свойства? Что создает и владеет навигационной панелью? – Wain