pop是facebook的开源动效库,实现倒计时真的非常方便,只用几行代码即可,如下:
- (void)countDownAction:(double)fromValue setEndValue:(double)toValue{
POPAnimatableProperty* prop = [POPAnimatableProperty propertyWithName:@"CountDown" initializer:^(POPMutableAnimatableProperty* prop){
prop.writeBlock = ^(id obj, const CGFloat value[]){
//self.label是你的空间,你也可以通过obj来获取
self.label.text = [NSString stringWithFormat:@"%.2f", value[0]];
};
}];
POPBasicAnimation* basic = [POPBasicAnimation animation];
basic.property = prop;//设置属性
basic.duration = 1;//持续时间
basic.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];//展示方式
basic.fromValue = @(fromValue);//起始值
basic.toValue = @(toValue);//终止值
[self.label pop_addAnimation:basic forKey:@"CountDownAnimation"];//将动画加入到对应的控件
}
打完收工