我在执行此动画时遇到一些问题。我觉得它可能有一些问题,但我找不到正确的方向。 我想在用户拖动UISlider控件时脉冲(向上和向下扩展)CATextLayer。
在IBAction方法中,我有以下代码。我已经检查过以确保该方法实际被调用。
CABasicAnimation *pulse = [CABasicAnimation animationWithKeyPath:@"scale"];
pulse.fromValue = [NSNumber numberWithFloat:1.0];
pulse.toValue = [NSNumber numberWithFloat:1.2];
pulse.duration = 1;
pulse.repeatCount = HUGE_VALF;
pulse.autoreverses = YES;
pulse.timingFunction =[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
[self.symbolLayer addAnimation:pulse forKey:nil];
我注意到该方法被反复调用非常快,我不确定这是否会阻止动画进行,或者动画块本身存在问题。
答案 0 :(得分:2)
您想要为contentScale
属性设置动画。 CATextLayer中没有scale
属性。
或者,我发现动画fontSize
似乎给了我更多我想要的效果。它动画来自中心的文本,而动画contentScale
似乎从其中一个角落动画。