iPad : UIPageViewController navigationOrientation
ipad, iphone, objective-c, uipageviewcontroller
Solution
Good question.
Don't know why, but it seems as if Apple doesn't want you to change that property. Either technical reasons or some sort of UI-guideline.
Anyway if you cannot change the orientation you should go with a different approach and use two `UIPageViewControllers`, each with another navigation orientation, which share one delegate. On device turn you hide/show the corresponding views or you init/release a new object each device turn.
BTW. Did you have a look at the `pageViewController:spineLocationForInterfaceOrientation:` method of the delegate. Seems as if Apple's preferred way of reacting to device orientation changes is this one:
Discussion Use this method to change the spine location when the device orientation changes, as well as setting new view controllers and changing the double-sided state.
This method is called only if the transition style is `UIPageViewControllerTransitionStylePageCurl`.
Note that Apple's calendar app goes with very slim pages in portrait - seems really to be their idea of UI.
Problem
I want the navigationOrientation of my `UIPageViewController` to change when I change the orientation of my `UIViewController`. That is, when the device is rotated to portrait I want the `navigationOrientation` to change from `UIPageViewControllerNavigationOrientationVertical` to `UIPageViewControllerNavigationOrientationHorizontal`. I tried setting `navigationOrientation` property on rotation of the view controller but I found that `navigationOrientation` property is read-only. Here are the images what I want. Landscape View Portrait View What should I do ?