设置新的最大值时,我试图为滑块设置动画。我这样设置最大值:
您可能会对为什么有一个.slider
属性感到迷惑-这是我自己的自定义类。
fingerSizeSlider.slider.maximumValue = Float(newValue) + 0.99
我尝试使用UIView.animate
无效,并且无法执行以下操作:
fingerSizeSlider.slider.setValue(fingerSizeSlider.slider.value, animated: true)
滑块会自动移动(这很好),但不会动画,并且正上方的代码行无效(因为显然,我将其设置为相同的值)。
如何为滑块的maximumValue
属性设置动画?
Here is a video to illustrate the issue (a gif is too choppy).
答案 0 :(得分:0)
滑块使用私有子视图进行绘制。您需要为这些子视图的布局设置动画。
UIView.animateWithDuration(0.2) {
fingerSizeSlider.slider.maximumValue = Float(newValue) + 0.99
fingerSizeSlider.slider.layoutIfNeeded()
}