我为我的应用程序设计了一个自定义指示器视图,其中包含一行10个圆圈。指示器指示任务的进度,任务越接近完成,填充的圆圈越多。我想为这个指标添加两个非常基本的动画,因为这是我的第一个iOS应用程序,我不确定实现它们的最佳方法是什么。
动画1 :在从服务器获取任务进度信息时,我希望每个点连续改变颜色(从黑色到蓝色)。
动画2 :让我说服务器完成80%的任务,我想将前8个点的颜色从黑色变为绿色,然后逐渐减少延迟。
我的问题是,是否可以在drawRect:
中实现这些动画,或者是否有更标准的方法来实现这样的事情。
谢谢!
答案 0 :(得分:0)
对于此UI,我根本不会使用drawRect:
。我会使用带有UIShapeLayer
的圆圈的path
来创建圆圈,然后使用
animateKeyframesWithDuration:delay:options:animations:completion
;此方法允许您为各个圆圈添加动画(使用addKeyframeWithRelativeStartTime:relativeDuration:animations:
),以及关键帧之间所需的任何延迟和相对持续时间。