Представление «Дизайн» в Интерфейсном Разработчике для ленивой загрузки в UIViewController - PullRequest
0 голосов
/ 13 ноября 2009

Мне удалось запутаться ... У меня довольно сложный View Controller, большая часть которого разработана программно. В какой-то момент я хотел бы открыть «диалоговое окно» поверх контроллера представления, и я бы хотел «спроектировать» это представление в Интерфейсном Разработчике, потому что оно довольно простое (фоновый UIImageView, некоторые UILabels и UIButton).

Я создал .xib и теперь создаю подкласс UIView с IBOutlets и т. Д. Сейчас я пытаюсь подключить его и понимаю, что мне, вероятно, нужно добавить метод initWithNibName:, чтобы он правильно создавался ... тогда я понимаю, что на самом деле просто делаю еще один UIViewController и не думаю, что мы должны иметь представления UIViewController с другими представлениями UIViewController?!?

Так что теперь я переосмысливаю, как это сделать "правильно". Как лучше всего использовать IB для разработки простого 1/4 экрана, который будет отображаться поверх основного экрана?

1 Ответ

1 голос
/ 13 ноября 2009

Позвоните +[NSBundle loadNibNamed:owner:], чтобы загрузить файл NIB, содержащий ваше представление. Если вы указали свой контроллер представления (т.е. self) в качестве владельца, все подключения, которые вы установили с владельцем файла в файле NIB, будут затем выполнены с контроллером представления. Таким образом, вы можете объявить выход для своего пользовательского представления в контроллере представления и после вызова

[NSBundle loadNibNamed:@"MyView" owner:self];

переменная выхода будет указывать на объект просмотра. В качестве альтернативы вы можете использовать -[NSBundle loadNibNamed:owner:options:], который возвращает массив объектов верхнего уровня в NIB.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...