У меня есть приложение, над которым я работаю, и у меня довольно много ввода данных во время регистрации пользователя. В ipad-версии приложения это очень просто, потому что все поля ввода данных могут отображаться на одном экране. Однако в версии iphone это выглядит не так просто, и я хотел разбить это на 2 экранах. Для этого потребуется переключение между XIB. Итак, мой вопрос в том, могу ли я использовать один контроллер представления и рассматривать 2 XIB как единое представление? Таким образом, я могу использовать один контроллер представления для ipad & iphone версий этого экрана и иметь всю бизнес-логику в одном контроллере.iPhone несколько просмотров с IPad один вид, как общий доступ к диспетчеру просмотра
1
A
ответ
1
Да, вы можете, если, конечно, ваши XIB совместимы с вашими контроллерами (например, ваши XIB не полагаются на свойства, которые контроллер не реализует). Я сделал это успешно без требования разбиения на две страницы, но у меня не было только одного класса контроллера: я также подклассифицировал этот контроллер (один подкласс для iPhone и один для iPad), чтобы сохранить небольшую часть специфичной для устройства логики в его собственный класс.
Для разметки страницы я предполагаю, что если у вас есть отдельный объект модели, вы можете иметь два экземпляра контроллера, один раз для XIB каждой страницы и заставить их работать с теми же данными, которые вам нужны.