У меня есть класс контроллера вида, который загружается из файла .nib. Тем не менее, я также хочу добавить элементы управления (например, UISwitch) к этому виду программно (UISwitch не добавляется в файл nib). В какой части моего кода я должен выделить элемент управления UISwitch, viewDidLoad или loadView?что вызвать viewDidLoad или loadview
ответ
Использование viewDidLoad
. Кроме того, вы должны удалить все, что вы добавили в методе viewDidUnload
.
Я бы сделал это на видуDidLoad. Определенно.
Из документации Apple:
Обсуждение Этот метод вызывается только , когда свойство зрения равна нулю, и необходим для отображения. Вы не должны вызывать этот метод напрямую.
Если вы создаете мнение, что этот вид контроллер управляет программным , то вы должны переопределить этот метод , чтобы создать вид. Реализация по умолчанию создает объект UIView без подсмотров.
Однако, если вы инициализировать вид с помощью острия файла-то есть, вы установите thenibName и nibBundle свойства, то вы не должны переопределить этот метод, потому что реализация по умолчанию уже перезагружает файл СИБ. Вместо этого переопределите метод viewDidLoad для установки любых свойств после загрузки файла nib .
В вашем случае UIView создается из файла СИБ.
Если вы загружаете из NIB, реализация loadView
приведет к ошибке. Используйте viewDidLoad
. Как говорит Пабло, это хорошо документировано Apple.
- 1. viewDidLoad и loadView вопросы
- 2. Несколько вызовов viewDidLoad/loadView
- 3. Почему требуется [super loadView] или [super viewDidLoad]?
- 4. SIGABRT между loadView и viewDidLoad
- 5. viewDidLoad не вызывается при использовании loadView
- 6. В чем разница между loadView и viewDidLoad?
- 7. viewDidLoad против loadView для пользовательских контроллеров контейнеров
- 8. Переопределение loadView вызывает viewDidLoad и loadView для стрельбы каждый раз, когда появляется VC
- 9. iPhone SDK: в чем разница между loadView и viewDidLoad?
- 10. Подкласс UIViewController не может вызвать метод loadView
- 11. Как правильно вызвать loadView() из рамки xcode
- 12. Следует ли вызывать [super loadView] из loadView или нет?
- 13. Для полностью программно созданного UIView/UIViewController, что должно быть в loadView vs viewDidLoad?
- 14. OSX: loadView не исполняется
- 15. UIViewController loadView метод
- 16. Как я могу вызвать viewDidLoad в UITableViewCell?
- 17. collectionview пытается вызвать cellForItem in viewDidLoad exception
- 18. Не лучше ли создавать иерархию подвалов в -viewDidLoad, а не в -loadView?
- 19. iPhone viewDidLoad
- 20. Swift ios viewDidLoad или viewDidAppear
- 21. viewDidLoad в NSViewController?
- 22. loadview VS interface builder
- 23. iOS Невозможно одновременно удовлетворить ограничениям в loadView
- 24. presentModalViewController viewDidLoad не называется
- 25. Можно ли назвать [super loadView]?
- 26. Почему мой UITableView не загружает detailView? - loadView и viewDidLoad не называются
- 27. Разница между viewdidload и viewload
- 28. Почему установка кадра в loadView не влияет?
- 29. MKMapView в методе loadView
- 30. Центрирование UIView в LoadView