2009-05-21 2 views
0

У меня есть класс контроллера вида, который загружается из файла .nib. Тем не менее, я также хочу добавить элементы управления (например, UISwitch) к этому виду программно (UISwitch не добавляется в файл nib). В какой части моего кода я должен выделить элемент управления UISwitch, viewDidLoad или loadView?что вызвать viewDidLoad или loadview

ответ

1

Использование viewDidLoad. Кроме того, вы должны удалить все, что вы добавили в методе viewDidUnload.

3

Я бы сделал это на видуDidLoad. Определенно.

Из документации Apple:

Обсуждение Этот метод вызывается только , когда свойство зрения равна нулю, и необходим для отображения. Вы не должны вызывать этот метод напрямую.

Если вы создаете мнение, что этот вид контроллер управляет программным , то вы должны переопределить этот метод , чтобы создать вид. Реализация по умолчанию создает объект UIView без подсмотров.

Однако, если вы инициализировать вид с помощью острия файла-то есть, вы установите thenibName и nibBundle свойства, то вы не должны переопределить этот метод, потому что реализация по умолчанию уже перезагружает файл СИБ. Вместо этого переопределите метод viewDidLoad для установки любых свойств после загрузки файла nib .

В вашем случае UIView создается из файла СИБ.

0

Если вы загружаете из NIB, реализация loadView приведет к ошибке. Используйте viewDidLoad. Как говорит Пабло, это хорошо документировано Apple.

Смежные вопросы