Как сделать UIPageViewController с неизвестными номерами страниц? - PullRequest
0 голосов
/ 17 февраля 2019

Мне нужно показать некоторое мультимедийное содержимое на UIPageViewController и позволить пользователю пролистывать носители (как в галерее), и я не знаю, сколько видео или изображений впереди, потому что я должен получить их одно за другим с сервера.Как я могу использовать UIPageViewController с неизвестными номерами страниц и просто зная контроллер просмотра предыдущей и следующей страницы?

Ответы [ 2 ]

0 голосов
/ 17 февраля 2019

Для UIPageViewController вам не нужно , чтобы указать общее количество элементов, чтобы оно работало.При настройке UIPageViewController вам нужно только установить View Controller, который вы хотите отображать при первой загрузке, с помощью следующего кода:

pageViewController.setViewControllers([viewControllerToBeDisplayed], direction: .forward, animated: false, completion: nil)

А затем, чтобы позволить пользователю переходить назад и вперед, вы простонеобходимо реализовать следующие методы UIPageViewControllerDataSource:

public func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController?
public func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController?

Надеюсь, это поможет.

0 голосов
/ 17 февраля 2019

Вы можете попробовать использовать представление коллекции как контроллер просмотра страницы.Вы можете попробовать настроить ячейку представления коллекции так, чтобы она соответствовала экрану, как контроллер представления страницы, и обновить источник данных и представление коллекции, как и при необходимости.

Пример здесь в HomeViewController можно увидеть

...