Изменить расположение элемента управления страницы - PullRequest
0 голосов
/ 06 февраля 2019

У меня есть контроллер страницы, у которого есть 4 страницы, и в первых трех индикатор страницы находится внизу экрана, а в последней я хочу изменить его на место вверху

 func newVc(viewController: String) -> UIViewController {
    return UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: viewController)
}

func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? {
    guard let viewControllerIndex = orderedViewControllers.index(of: viewController) else {
        return nil
    }
    let previousIndex = viewControllerIndex - 1
    guard previousIndex >= 0 else {
        return orderedViewControllers.last
    }
    guard orderedViewControllers.count > previousIndex else {
        return nil
    }
    return orderedViewControllers[previousIndex]
}

func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? {
    guard let viewControllerIndex = orderedViewControllers.index(of: viewController) else {
        return nil
    }
    let nextIndex = viewControllerIndex + 1
    let orderedViewControllersCount = orderedViewControllers.count
    guard orderedViewControllersCount != nextIndex else {
        return orderedViewControllers.first
    }
    guard orderedViewControllersCount > nextIndex else {
        return nil
    }
    return orderedViewControllers[nextIndex]
}

func configurePageControl() {
  many available colors we have.
    pageControl = UIPageControl(frame: CGRect(x: 0,y: UIScreen.main.bounds.maxY - 50,width: UIScreen.main.bounds.width,height: 50))
    self.pageControl.numberOfPages = orderedViewControllers.count
    self.pageControl.currentPage = 0
    self.pageControl.tintColor = UIColor.black
    self.pageControl.pageIndicatorTintColor = UIColor.white
    self.pageControl.currentPageIndicatorTintColor = UIColor.black
    self.view.addSubview(pageControl)
}

1 Ответ

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

Измените y position в кадре управления страницей при достижении определенного индекса в контроллере просмотра страниц.

Попробуйте следующий код:

pageControl.frame = CGRect(x: 0, y: 70, width: UIScreen.main.bounds.width, height: 50)

отрегулируйте свою позицию Y врамка по вашему требованию.

...