任何人都知道如何创建垂直UIPageControl?我有一个启用了分页的UIScrollView,我希望UIPageControl位于侧面并垂直显示而不是水平显示。
提前谢谢你......
答案 0 :(得分:38)
您可以将旋转变换应用于UIPageControl。
pageControl.transform = CGAffineTransformMakeRotation(M_PI_2);
Swift 3.0
let angle = CGFloat(M_PI_2)
pageControl.transform = CGAffineTransform(rotationAngle: angle)
Swift 4.0
let angle = CGFloat.pi/2
pageControl.transform = CGAffineTransform(rotationAngle: angle)
答案 1 :(得分:2)
Swift 3.1的更新
pageControl.transform = pageControl.transform.rotated(by: .pi/2)
答案 2 :(得分:0)
您可以使用UICollectionView
启用分页和垂直滚动。这会自动处理垂直分页。
答案 3 :(得分:0)
页面控件有子视图,必须旋转才能形成垂直点
//create page control
private let pageControl: UIPageControl = {
let pageControl = UIPageControl()
pageControl.numberOfPages = 3
return pageControl
}()
//add page control as a subview to container UIView
override func viewDidLoad() {
pageViewContainer.addSubview(pageControl)
}
//rotate it vertically
override func viewWillLayoutSubviews() {
pageControl.frame = pageViewContainer.bounds
pageControl.subviews.last?.transform = CGAffineTransform(rotationAngle: CGFloat.pi/2)
pageControl.subviews.first?.transform = CGAffineTransform(rotationAngle: CGFloat.pi/2)
}