如何创建自定义 Slider 控件
Posted
技术标签:
【中文标题】如何创建自定义 Slider 控件【英文标题】:How to create a custom Slider control 【发布时间】:2017-01-23 15:32:24 【问题描述】:我需要做一个这样的滑块。 它需要粘在一行文本上,并且所有文本无论多长都需要相同的大小(一个句子可能比另一个长很多)
我现在的方法是创建一个自定义 UIView
并计算文本的位置并将 CATextLayer
添加到正确的位置。
并处理我自己的平移/点击手势。
有没有更简单的方法来做到这一点?是否可以为此使用UISlider
? UIlabels
而不是 CATextLayers
?
【问题讨论】:
【参考方案1】:您可以使用带旋转的普通UISlider
使其垂直.transform
来旋转它。例如要使其垂直可以使用
mySlider.transform = CGAffineTransform(rotationAngle: CGFloat.pi / 2)
然后,使用自定义子类更改您的 UISlider
,如下所示。
override func draw(_ rect: CGRect)
super.draw(rect)
self.tintColor = .red
self.maximumTrackTintColor = .red
【讨论】:
以上是关于如何创建自定义 Slider 控件的主要内容,如果未能解决你的问题,请参考以下文章