2016-10-27 4 views
1

Стараюсь следующий подход нашел hereProgramatically переворачивает страницу, индикаторы не меняет

extension UIPageViewController { 

func goToNextPage(){ 

    guard let currentViewController = self.viewControllers?.first else { return } 

    guard let nextViewController = dataSource?.pageViewController(self, viewControllerAfter: currentViewController) else { return } 

    setViewControllers([nextViewController], direction: .forward, animated: true, completion: nil) 

    } 
} 

Он работает, но есть одна проблема:

Когда страница включается программно, индикатор не переехать. Кажется, что они движутся только тогда, когда пользователь поворачивается. страница с прикосновением

вот как индикаторы должны выглядеть после выполнения программной очереди:

enter image description here

вместо этого они остаются неизменными

enter image description here

Что приводит к выдаче этой иерархии проявленных показателей скорее [2,0,1] вместо [0,1,2]

Вот как я применяю индикаторы:

func presentationCount(for PageViewController:UIPageViewController) -> Int { 


    return 3 

} 

func presentationIndex(for PageViewController:UIPageViewController) -> Int { 

    return 0 
} 

Как сделать индикаторы точек движущимися, когда страница превращается программно?

ответ

1

К сожалению, вы не можете обновить UIPageControl, встроенный в UIPageViewController. Тем не менее, вы можете иметь свой собственный UIPageControl в UIPageViewController, чтобы получить полный контроль. Затем вы можете обновить свойство UIPageControl программно при обновлении своей страницы. Посмотрите на это article.

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

  • Нет связанных вопросов^_^