我已使用viewDidLoad中的此功能将UIPageControl固定在集合视图控制器的底部。
func setUpViewsAndConstraints(){
collectionView.addSubview(pageControl)
collectionView.bringSubviewToFront(pageControl)
pageControl.centerXAnchor.constraint(equalTo: collectionView.centerXAnchor).isActive = true
pageControl.bottomAnchor.constraint(equalTo: collectionView.safeAreaLayoutGuide.bottomAnchor, constant: 0).isActive = true
}
但是当我滚动浏览各个单元格时,pageControl会停留在第一个单元格的下方,而当我移至下一个单元格时,它会被留在后面...
我以为滚动和collectionView时只有单元格移动了,但事实并非如此,否则我做错了。。
我在这里想念什么? 预先感谢您的回答!
答案 0 :(得分:0)
我建议您将pageControl保留在collectionView下,而不要放在里面,因为我可以看到您正在将pageControl的bottomAnchor添加到collectionView的同一底部;尝试单独保存它们,并在pageView的底部添加一个顶部约束到collectionView的底部,并在您的ViewController中添加一个centralAnchor
pageControl.centerXAnchor.constraint(equalTo: viewController.centerXAnchor).isActive = true
pageControl.topAnchor.constraint(equalTo: collectionView.safeAreaLayoutGuide.bottomAnchor, constant: 0).isActive = true
也许是您观点的底线约束
pageControl.bottomAnchor.constraint(equalTo: viewController.safeAreaLayoutGuide.bottomAnchor, constant: 0).isActive = true
显然,在这种情况下,您应该有一个UIViewController父级,其中一个UICollectionView和一个pageControl作为子级