【发布时间】:2017-08-23 09:40:28
【问题描述】:
我想为一个显示指针位置的滑块制作一个标签,如下所示:
这是我在滑块指针移动时移动此标签的代码:
var sliderPointWidth : CGFloat = 32.0
@IBAction func sliderValueChanged( _ slider : UISlider ){
sliderLabel.text = "\( Int( roundf( slider.value ) ) )"
let leftMove = slider.frame.minX
let allRange = ( slider.frame.width - sliderPointWidth ) * CGFloat( slider.value / slider.maximumValue )
let middleOfSliferLabel = sliderLabel.frame.width / 2
let x = leftMove + sliderPointWidth / 2 + allRange - middleOfSliferLabel
sliderLabel.frame.origin = CGPoint( x: CGFloat(x) , y: sliderLabel.frame.minY )
}
但是要使标签的中间 x 和指针的中间 x 相同,我需要知道这个指针的宽度。流利地看着这个,我明白它大约是32分。但我不知道其他屏幕的这个值。 UISlider有没有方法可以说出这个值?
【问题讨论】: