UIPageControl, помещенный вручную, уходит с экрана при повороте - PullRequest
0 голосов
/ 09 июня 2019

UIPageControl, который был помещен программно в представление исчезает (за пределами экрана?), Когда устройство поворачивается.

В приложении, над которым я сейчас работаю, есть UIPageViewController, который имеет 3 ViewController.

Я прокручиваю эти штрафа. Никаких проблем - ни в портретной, ни в альбомной ориентации.

Я добавил UIPageControl в UIPageViewController в коде, а не в раскадровке, и поэтому в портретном режиме у меня есть хорошая последовательность точек, которые показывают положение прокрутки через мои перемещаемые ViewControllers.

Это все прекрасно работает.

ЗА ИСКЛЮЧЕНИЕМ, когда я поворачиваю в пейзаж.

private func configurePageControl()
{
    self.pageControl = UIPageControl(frame: CGRect(x: 0, y: UIScreen.main.bounds.maxY - 90, width: UIScreen.main.bounds.width, height: 50))

    self.pageControl.numberOfPages = orderedViewControllers.count
    self.pageControl.currentPage = 0
    self.pageControl.tintColor = UIColor.white
    self.pageControl.pageIndicatorTintColor = UIColor.black
    self.pageControl.currentPageIndicatorTintColor = UIColor.white
    self.view.addSubview(self.pageControl)
}

В альбомной ориентации UIPageViewController и 3 ViewController работают отлично; прокрутка и показ содержимого и являются интерактивными.

Однако индикатор UIPageControl как «исчез».

Теперь я предвосхищу это тем фактом, что мой UIPageViewController является частью более крупного проекта UITabBarViewController, и поэтому в нижней части экрана расположена панель вкладок.

Но когда я работал в портретной ориентации, я специально позиционировал UIPageControl (в коде) так, чтобы он был «над» этой панелью вкладок, и он есть, и он отображается, но он полностью перешел в горизонтальную плоскость.

NB. Этот код находится в UIPageViewController, где живет только обработка 3 отдельных контроллеров представления.

Спасибо.

...