2012-02-19 5 views
0

У меня есть UIViewController, которые позволяют мне отображать текст в виде. Я хочу добавить метод ввода без добавления его непосредственно в этот контроллер представления, этот метод ввода будет кнопкой или UITextField. Этот метод ввода будет много, но он будет использовать его во время его выбора, поэтому я не буду иметь UIViewController, который контролирует все это.Создайте UIViewController, который содержит UIViewController

Что я хочу знать, как можно разделить выходной вид (контроллер) с каждым видом входа (контроллер)?

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

Это ясно ?

+0

Я написал [пример] (https://github.com/alfiehanssen/ios-viewcontroller-containment) о том, как использовать 'UIViewController' сдерживание, может быть полезно –

ответ

2

Конечно, можно иметь 2 UIViewControllers на экране в любое время Есть несколько способов, чтобы идти об этом:.!

Использование одного главного Вид: Добавить вид второго ViewController как подвид

Использование Interface Builder: Drag в UIViewController объекта, установить его класс, а затем подключить его Посмотреть на выходе к UIView в первом ViewController

Детский вид. Контроллер: как следует из названия, - addChildViewViewController: добавит новый ViewController, а затем добавит его в виде подзаголовка.

+0

После добавления viewcontorller с помощью Interface Builder я получаю эту ошибку : «Ожидается, что приложения будут иметь контроллер корневого представления в конце запуска приложения. Прекращение в ответ на завершение SpringBoard». – DX89B

+0

In -applicationDidFinishLaunchingWithOptions: вам нужно добавить контроллер корневого контроллера adda. Google, ошибка имеет миллион ответов. – CodaFi

+0

addChildViewController - только iOS 5. – lorean

1

Да, это возможно. Просто добавьте контроллер в качестве контроллера ребенка ([UIViewController addChildController:] и его вид ([controller.view addSubview:childController.view])

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