core graphics - ios: Animating UIControl with CoreGraphics



我遵循本教程并尝试制作一个滑块。

我有一个幻灯片类:
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方法设计动画部分,这将是棘手的,你将不得不手动重新绘制每个动画帧的部分。

最新更新