$30 off During Our Annual Pro Sale. View Details »

UIPageViewController

 UIPageViewController

It’s not totally useless.

Code: https://github.com/zorn/PageDemo

Mike Zornek

December 08, 2016
Tweet

More Decks by Mike Zornek

Other Decks in Programming

Transcript

  1. UIPageViewController
    It’s not totally useless.

    View Slide

  2. What is it?

    View Slide

  3. View Slide

  4. View Slide

  5. View Slide

  6. View Slide

  7. View Slide

  8. My History

    View Slide

  9. View Slide

  10. View Slide

  11. How does it work?

    View Slide

  12. UITableView
    DataSource
    Delegate

    View Slide

  13. UIPageView

    Controller
    DataSource
    Delegate
    ?

    View Slide

  14. class UIPageViewController : UIViewController {
    public init(transitionStyle style: UIPageViewControllerTransitionStyle,
    navigationOrientation: UIPageViewControllerNavigationOrientation,
    options: [String : Any]? = nil)
    }

    View Slide

  15. func setViewControllers(_ viewControllers: [UIViewController]?,
    direction: UIPageViewControllerNavigationDirection,
    animated: Bool,
    completion: ((Bool) -> Swift.Void)? = nil)

    View Slide

  16. func pageViewController(_ pageViewController: UIPageViewController,
    viewControllerBefore viewController: UIViewController) -> UIViewController?
    func pageViewController(_ pageViewController: UIPageViewController,
    viewControllerAfter viewController: UIViewController) -> UIViewController?
    UIPageViewDataSource

    View Slide

  17. func pageViewController(_ pageViewController: UIPageViewController,
    viewControllerBefore viewController: UIViewController) -> UIViewController?
    func pageViewController(_ pageViewController: UIPageViewController,
    viewControllerAfter viewController: UIViewController) -> UIViewController?
    viewControllerBefore
    viewControllerAfter
    UIPageViewDataSource

    View Slide

  18. UIPageViewDataSource
    func presentationCount(for pageViewController: UIPageViewController) -> Int
    func presentationIndex(for pageViewController: UIPageViewController) -> Int

    View Slide

  19. UIPageViewDelegate
    func pageViewController(_ pageViewController: UIPageViewController,
    willTransitionTo pendingViewControllers: [UIViewController])
    func pageViewController(_ pageViewController: UIPageViewController,
    didFinishAnimating finished: Bool,
    previousViewControllers: [UIViewController],
    transitionCompleted completed: Bool)

    View Slide

  20. Performance / Bugs

    View Slide

  21. Final Thoughts

    View Slide