所以我正在使用此代码,但是它没有显示第一个点(全白)。
实施概述:
在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)
}
这里可能出什么问题了?非常感谢您的帮助。
答案 0 :(得分:0)
出于不清楚的原因,您搞砸了UIPageControl(其子视图)的内部。你不应该那样做。第一个点的开头是白色,表示已选择第一页。如果您希望另一个点变成白色,请设置'currentPage
'属性。
有关详细信息,请参见https://developer.apple.com/documentation/uikit/uipagecontrol。