Page View Controller is ignoring data source and not scrolling when stacked with another page view controller

I have the following set up:

If the image is not showing, here is the link: http://i.imgur.com/ebuqpr5.png

Problem: One of the page view controllers will not scroll while the other page view controller (using the same data source) will scroll


There are two containers layered on top of each other that each have a Page View Controller embedded within them. The "Log" view controller (far left) responds to the segmented control by hiding and displaying one of the page view controllers. The "Overview" and "Active" view controllers (far right) are instantiated by the "Log" View controller and provided as a data source to both the page view controllers. For some reason however, only the overview page view controller will scroll, while the active page view controller remains on one screen.


The page view controller set up (found in the "Log" view controller) is as follow:


override func viewDidLoad() {
        super.viewDidLoad()

        // Set the segmented control to overview mode
        segmentedControl.selectedSegmentIndex = 1
        logModeChanged(segmentedControl) // show the right view

        // Set up the initial view controllers for each page view
        let overviewContent = self.storyboard?.instantiateViewControllerWithIdentifier(contentControllerIDs[0]) as! UIViewController /
        let activeContent = self.storyboard?.instantiateViewControllerWithIdentifier(contentControllerIDs[1]) as! UIViewController /
        overviewController.setViewControllers([overviewContent], direction: .Forward, animated: false, completion: nil)
        activeViewController.setViewControllers([activeContent], direction: .Forward, animated: false, completion: nil)

        // Set the data source of each view controller
        overviewController.dataSource = self
        activeViewController.dataSource = self
}


And the data source methods are as follow:


func pageViewController(pageViewController: UIPageViewController, viewControllerBeforeViewController viewController: UIViewController) -> UIViewController? {

        return getPage()
}

func pageViewController(pageViewController: UIPageViewController, viewControllerAfterViewController viewController: UIViewController) -> UIViewController? {

        return getPage()
}

func getPage() -> UIViewController? {

        // Overview mode
        if activeViewController.view.hidden {
            let content = self.storyboard?.instantiateViewControllerWithIdentifier(contentControllerIDs[0]) as! UIViewController /
            return content
        }
    
        // Active mode
        else if overviewController.view.hidden {
            let content = self.storyboard?.instantiateViewControllerWithIdentifier(contentControllerIDs[1]) as! UIViewController /
    
            return content
        }

        println("Reached")

        return nil
}

What happens if, instead of hiding the outgoing page view controller, you remove it from the view heirarchy entirely?

Page View Controller is ignoring data source and not scrolling when stacked with another page view controller
 
 
Q