Как добавить UITableView в одно из нескольких подзонов с помощью раскадровки
У меня есть один UIViewController с двумя UIViews на нем. На панели навигации, когда одна кнопка нажата, отображается один из UIViews и когда другая кнопка нажата, отображается другой UIView. Я хочу поместить UITableView в одно из видов. Однако UITableView требует, чтобы UIViewController использовал UITableViewDelegate и UITableViewDataSource. Внедрив это для моего UIView (subview), содержащего UTTableView, когда я нажимаю кнопку для другого представления, которое не содержит таблицы, я получаю ошибки, и приложение скрипит.
Я предполагаю (возможно, неправильно), что моя проблема в том, что я пытаюсь использовать тот же UIViewController для обоих подзонов, но только один содержит таблицу.
Вопрос 1) Можно ли сделать то, что я описал выше? Смысл, если у меня была проблема, тогда что-то не было правильно подключено.
Итак, я пошел по пути создания двух отдельных UIViewControllers; по одному для каждого вида. Не уверен, что это разумный подход. Теперь я просто ищу совет по наилучшему способу сделать это. Заранее благодарю вас за помощь.
Чтобы быть более ясным, что я пытаюсь сделать. Я хочу, чтобы синее изображение было помещено туда, где открывается розовый вид, когда нажимается первая кнопка на панели, и я хочу, чтобы желтый вид был помещен там, где розовый вид, когда нажимается вторая кнопка. По существу розовый вид никогда не будет отображаться и может даже не понадобиться в UtilityViewController.
Ответы
Ответ 1
Наличие каждого в качестве UIViewController (или его подкласса) - это способ сделать то, что вы пытаетесь сделать. UITabBarController делает это уже: https://developer.apple.com/library/ios/documentation/uikit/reference/UITabBarController_Class/Reference/Reference.html