我正在研究循环进度视图,而且工作很酷。但是我想让它更加灵活,因此用户可以像普通的UIProgressView
与NSTimer
配对一样使用它。我不知道如何使: setProgress:(float)progress animated:(BOOL)animated
的等效词?目前,我正在使用硬编码的值和持续时间进行测试,因此可以很好地进行动画,但是肯定可以以某种方式了解确切的持续时间值?
用CAMediaTimingFunction
将其放入我的方法中更新CGPath
if (self.continuous) {
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"strokeEnd"];
//animation.duration = 0.5;
animation.fromValue = [NSNumber numberWithFloat:prevValue];
animation.toValue = [NSNumber numberWithFloat:_value];
animation.removedOnCompletion = NO;
animation.fillMode = kCAFillModeForwards;
animation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];
[self.progressLayer addAnimation:animation forKey:@"strokeEndAnimation"];
}