Как придать контроллеру вида страницы стиль перехода "Вертикальная обложка"

С помощью контроллера Navigation View я могу создать анимацию стиля перехода "Вертикальная обложка". Однако возникли проблемы с репликацией этого с помощью контроллера представления страниц. Единственные параметры, указанные на доске объявлений, - это "Прокрутка" и "Page Curl". Есть ли способ сделать это программно?

1 ответ

Это выглядит немного сложно, но это должно работать:

Создайте UIViewController, который будет Контейнерным Контроллером. Добавьте UIPageControl, где вы хотите. Затем программно добавьте UINavigationViewController как дочерний элемент контейнера и добавьте его представление в иерархию представлений. Вы можете использовать instantiateViewControllerWithIdentifier: основной раскадровки и не забудьте установить для него ограничения, если вы используете AutoLayout. Используйте делегат между контейнером и UINavigationViewController или свойством parentViewController UINavigationViewController, чтобы изменить UIPageControl, когда пользователь перемещается в UINavigationViewController.

UIPageViewController хорош, чтобы сделать только одну вещь. Большую часть времени я предпочитаю использовать пользовательский контейнерный контроллер, а не использовать его.

Другие вопросы по тегам