A container view controller that manages navigation between pages of content, where each page is managed by a child view controller.
SDKs
- iOS 5.0+
- Mac Catalyst 13.0+
- tvOS 9.0+
Framework
- UIKit
Declaration
class UIPageViewController : UIView Controller
Overview
Page view controller–navigation can be controlled programmatically by your app or directly by the user using gestures. When navigating from page to page, the page view controller uses the transition that you specify to animate the change.
Important
In tvOS, the UIPage
class provides only a way to swipe between full-screen content pages. Unlike in iOS, a user cannot interact with or move focus between items on each page.
When defining a page view controller interface, you can provide the content view controllers one at a time (or two at a time, depending upon the spine position and double-sided state) or as-needed using a data source. When providing content view controllers one at a time, you use the set
method to set the current content view controllers. To support gesture-based navigation, you must provide your view controllers using a data source object.
The data source for a page view controller is responsible for providing the content view controllers on demand and must conform to the UIPage
protocol. The delegate object—an object that conforms to the UIPage
protocol—provides some appearance-related information and receives notifications about gesture-initiated transitions.
This class is generally used as-is, but can also be subclassed.