2015-09-26 4 views
0

Я использую pageViewController, встроенный в Container в ViewController, используемый в качестве главного экрана. ViewController имеет несколько кнопок для открытия другого ViewController.Как перейти на определенную страницу в pageViewController?

Я ищу способ обновить текущую страницу pageViewController на основе значения переменной, заданной при сохранении данных на другом ViewController. Мне удалось получить значение в Home ViewController и в состоянии почти сделал это работать с этим кодом на viewDidLoad для дома ViewController

if currentStatPage > 0 { 
    startVC = self.viewControllerAtIndex(currentStatPage) as ViewControllerDashboardCharts 
    viewControllers = NSArray(object: startVC) 
    self.pageViewController.setViewControllers(viewControllers as! [UIViewController], direction: .Forward, animated: true, completion: nil) 
    var pageController = UIPageControl.appearance() 
    pageController.currentPage = currentStatPage 

} 

Проблема заключается в том, что это я выбираю кнопку, которая будет отображаться страница # 3 (отправляя значение 2), страницы на страницеViewController выходят из строя (первая страница попадает на место 2-й страницы).

Есть ли способ предварительно загрузить 6 ViewControllers (динамически созданный) и программно перейти к конкретному?

Любая помощь была бы принята с благодарностью, спасибо.

ответ

0

Проблема была presentationIndexForPageViewController. У меня был код, который возвращал 0, когда изменил возвращаемое значение на текущий индекс страницы, проблема исчезла.

func presentationIndexForPageViewController(pageViewController: UIPageViewController) -> Int { 
    return currentStatPage 

} 
Смежные вопросы