2011-10-22 5 views
1

このアニメーションを実行するにはいくつかの問題があります。おそらくそれにはいくつかの問題があると感じていますが、正しい方向を見つけるのが難しいです。 ユーザーがUISliderコントロールをドラッグしている間にCATextLayerをパルス処理(拡大縮小)したいと思います。UISliderアクションに基づいてCATextLayerにアニメ化する

私は次のコードを持っています。メソッドが実際に呼び出されていることを確認しました。

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]; 

私はイムはわからない、これが起こってからアニメーションを防ぐ場合は、この方法を繰り返し、非常に高速と呼ばれていることに気づいた、またはアニメーションブロック自体に問題があります。

答えて

2

contentScaleプロパティをアニメーション化します。 CATextLayerには、scaleプロパティはありません。

また、アニメーションfontSizeが、私が探していた効果をより多く与えるように見えることがわかりました。 contentScaleのアニメーション化は、コーナーの1つからアニメートするように見えますが、中央からテキストをアニメートします。

+2

CABasicAnimationでfontSizeをアニメーション化する例を投稿できますか? –

関連する問題