首页 > 解决方案 > 当前页面点较大的页面控件不起作用(带有滚动的 UIPageControl)

问题描述

所以我正在使用这段代码,但它没有显示第一个点(全白)。

实施概述:

在 viewDidAppear -

adjustDots()

在 scrollViewDidScroll -

let page = scrollView.contentOffset.x / scrollView.frame.size.width
adjustDots()

我们有 :

  func adjustDots()
        {
            pageControl.subviews.forEach {
                $0.transform = CGAffineTransform(scaleX: 1.15, y: 1.15)
            }
            pageControl.subviews[pageControl.currentPage].transform = CGAffineTransform(scaleX: 1.5, y: 1.5)



            self.pageControl.subviews[self.pageControl.currentPage].translatesAutoresizingMaskIntoConstraints = false

            self.pageControl.subviews[self.pageControl.currentPage].centerYAnchor.constraint(equalTo: self.pageControl.subviews[0].centerYAnchor , constant: 0)

          self.pageControl.subviews[self.pageControl.currentPage].centerXAnchor.constraint(equalTo: self.pageControl.subviews[0].centerXAnchor , constant: 0)

        }

这里可能有什么问题?任何帮助深表感谢。

标签: iosswiftxcode

解决方案


由于不清楚的原因,您正在弄乱 UIPageControl(其子视图)的内部。你不应该那样做。第一个点在开头是白色的,表示选择了第一页。如果您希望另一个点为白色,请设置 ' currentPage' 属性。

有关详细信息,请参阅https://developer.apple.com/documentation/uikit/uipagecontrol


推荐阅读