增加UIPageViewController的UIPageControl中指标的大小

Anu*_*rma 22 uipagecontrol uipageviewcontroller swift

是否可以增加指标的大小UIPageViewController

我有这个:

我的要求是这样的:

Ash*_*lls 69

缩放页面控件将缩放点,但也会缩放它们之间的间距.

pageControl.transform = CGAffineTransform(scaleX: 2, y: 2)
Run Code Online (Sandbox Code Playgroud)

如果要在点之间保持相同的间距,则需要单独转换点:

pageControl.subviews.forEach {
    $0.transform = CGAffineTransform(scaleX: 2, y: 2)
}
Run Code Online (Sandbox Code Playgroud)

但是,如果您执行此操作viewDidLoad,则视图出现时已重置转换,因此您应该在viewDidLayoutSubviews...中执行此操作

override func viewDidLayoutSubviews() {
    pageControl.subviews.forEach {
        $0.transform = CGAffineTransform(scaleX: 2, y: 2)
    }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • @DuncanC苹果可能不支持它,但是它仍然允许它。例如,自定义NavigationBar时也是如此。您只需要避免使用私有符号。 (2认同)

Mak*_*lle 6

您可以UIPageControl像这样使用和缩放它:

@IBOutlet weak var pageControl: UIPageControl!

 override func viewDidLoad() {
    super.viewDidLoad()
    pageControl.transform = CGAffineTransform(scaleX: 2, y: 2); //set value here
}
Run Code Online (Sandbox Code Playgroud)

问题在于您的点之间的间隔也会增加。如果您想对点进行精确设计,则必须使用3party控件:https ://www.cocoacontrols.com/


Har*_*kar 6

对于 swift 2.0 增加或减少 pageControl Indicator 的大小

self.pageControl.transform = CGAffineTransformMakeScale(0.8, 0.8)
Run Code Online (Sandbox Code Playgroud)

或者

self.pageControl.transform = CGAffineTransformMakeScale(1.3, 1.3)
Run Code Online (Sandbox Code Playgroud)