1

I have a view container containing a UIPageViewController. to him they are associated with 2 viewController of UIImageView. It works almost everything. I can not change the animations to scroll through images. the animation is always that of the page curl while I would like a simple scroll. how to do?

class MyPageViewController: UIPageViewController, UIPageViewControllerDataSource, UIPageViewControllerDelegate {

var pages = [UIViewController]()

override func viewDidLoad() {
    super.viewDidLoad()

    self.delegate = self
    self.dataSource = self

    let page1: UIViewController! = storyboard?.instantiateViewController(withIdentifier: "page1")
    let page2: UIViewController! = storyboard?.instantiateViewController(withIdentifier: "page2")

    pages.append(page1)
    pages.append(page2)

    setViewControllers([page1], direction: UIPageViewControllerNavigationDirection.forward, animated: false, completion: nil)

}

func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? {
    let currentIndex = pages.index(of: viewController)!
    let previousIndex = abs((currentIndex - 1) % pages.count)
    return pages[previousIndex]

}

func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? {
    let currentIndex = pages.index(of: viewController)!
    let nextIndex = abs((currentIndex + 1) % pages.count)
    return pages[nextIndex]
}

private func presentationCountForPageViewController(pageViewController: UIPageViewController) -> Int {
    return pages.count
}

private func presentationIndexForPageViewController(pageViewController: UIPageViewController) -> Int {
    return 0
}

}

Storyboard

1 Answers1

1

How are you initiating the UIPageViewController?

From code, you can specify a transitionStyle in the constructor, as seen here

From storyboard, you can specify the same transitionStyle in the storyboard itself, as shown in this SO answer

Community
  • 1
  • 1
BHendricks
  • 4,423
  • 6
  • 32
  • 59