自从今年早些时候推出以来,我一直在使用Facebook POP引擎(https://github.com/facebook/pop)取得了很好的效果。
到目前为止,我还不需要在任何自定义属性上实现动画,但是现在我想要为CAShapeLayer CGPath属性设置动画(这不是标准属性之一)。
这是建议的方法......
prop = [POPAnimatableProperty propertyWithName:@"com.foo.radio.volume" initializer:^(POPMutableAnimatableProperty *prop) {
// read value
prop.readBlock = ^(CAShapeLayer *obj, CGFloat values[]) {
values[0] = [obj volume];
};
// write value
prop.writeBlock = ^(CAShapeLayer *obj, const CGFloat values[]) {
[obj setVolume:values[0]];
};
// dynamics threshold
prop.threshold = 0.01;
}];
anim.property = prop;
但我无法将其应用于CGPath属性。
任何建议都很受欢迎。