增加 UIPageControl 指示点之间的间距
Increase spacing between indicator dots of UIPageControl
所以我正在努力自定义 UIPageControl(Apple 确实不容易),我想知道是否有办法在指示器点之间 increase/decrease space。
我一直在使用这段代码来获取 UIPageControl
var pageControlMaybe: UIPageControl?
for (var i = 0; i < subviews.count; i++) {
if (subviews[i] is UIPageControl) {
pageControlMaybe = subviews[i] as? UIPageControl
break
}
}
但现在我想知道是否有一种简单的方法来改变间距?我可以使用 transform
调整点的大小
pageControlMaybe?.transform = CGAffineTransformMakeScale(1.4, 1.4)
但这也增加了它们之间的间距。理想情况下,它会保持点大小并减少它们之间的 space。
如回答 some other times there's no way to do this. I'd recommend you using 3rd party controls like FXPageControl 并使用此 属性:
@property (nonatomic, assign) CGFloat dotSpacing;
第一个缩放 pageControl
设比例:CGFloat = 1.5
pageControl.transform = CGAffineTransform.init(scaleX: scale, y: scale)
这也会缩放每个点,因此您可以使用以下代码缩放每个点
for dot in pageControl.subviews{
dot.transform = CGAffineTransform.init(scaleX: 1/scale, y: 1/scale)
}
有点笨拙但有效
所以我正在努力自定义 UIPageControl(Apple 确实不容易),我想知道是否有办法在指示器点之间 increase/decrease space。
我一直在使用这段代码来获取 UIPageControl
var pageControlMaybe: UIPageControl?
for (var i = 0; i < subviews.count; i++) {
if (subviews[i] is UIPageControl) {
pageControlMaybe = subviews[i] as? UIPageControl
break
}
}
但现在我想知道是否有一种简单的方法来改变间距?我可以使用 transform
调整点的大小pageControlMaybe?.transform = CGAffineTransformMakeScale(1.4, 1.4)
但这也增加了它们之间的间距。理想情况下,它会保持点大小并减少它们之间的 space。
如回答 some other times there's no way to do this. I'd recommend you using 3rd party controls like FXPageControl 并使用此 属性:
@property (nonatomic, assign) CGFloat dotSpacing;
第一个缩放 pageControl
设比例:CGFloat = 1.5
pageControl.transform = CGAffineTransform.init(scaleX: scale, y: scale)
这也会缩放每个点,因此您可以使用以下代码缩放每个点
for dot in pageControl.subviews{
dot.transform = CGAffineTransform.init(scaleX: 1/scale, y: 1/scale)
}
有点笨拙但有效