我遵循本教程并尝试制作一个滑块。
我有一个幻灯片类:class YDSlider: UIControl {
var value = 0.0
...
它有一个渐变的子层来显示进度(就像教程一样)。我想实现一个func setValue(value: Double, animated: Bool)
函数,但我不明白如何动画变化。我当前的方法不起作用:
UIView.animateWithDuration(1, delay:1.0, options:UIViewAnimationOptions.LayoutSubviews, animations: { () -> Void in
self.value = value
}, completion: nil)
如果没有你的类的源代码,它将很难帮助你,但就我在教程中看到的,滑块是用UIViews, CALayers和drawRect方法设计的。
取决于你想要动画的滑动条的元素类型,你将不得不使用UIView animationons和CoreAnimation。如果你需要用drawRect方法设计动画部分,这将是棘手的,你将不得不手动重新绘制每个动画帧的部分。