0

背景色を永久に変更したいカスタムビューがあります。色は徐々に変化するはずです。iOS繰り返し色合いを永久に変える方法

だから青の暗いぼかし>ライターシェード等>緑色光>黄色>赤等

これらの変化は滑らかである必要があります。

次の可能な色を生成する方法と、すべてをブロックすることなくこれをスムーズかつ無限にする方法もわかりません。

ご協力いただければ幸いです。ちょうど以下のような

+0

ルック();私が考え始めるのに良い場所 –

答えて

0

使用CAAnimationGroupを使う、:animateWithDurationに

CABasicAnimation * darkToBlue = [CABasicAnimation animationWithKeyPath:@"backgroundColor"]; 
darkToBlue.fromValue = (id)([[UIColor darkGrayColor]CGColor]); 
darkToBlue.toValue = (id)[[UIColor blueColor]CGColor]; 
darkToBlue.duration = 1; 
darkToBlue.beginTime = 0; 

CABasicAnimation * blueToRed = [CABasicAnimation animationWithKeyPath:@"backgroundColor"]; 
blueToRed.fromValue = (id)([[UIColor blueColor]CGColor]); 
blueToRed.toValue =(id)[[UIColor redColor]CGColor]; 
blueToRed.duration = 1; 
blueToRed.beginTime = 1; 

CABasicAnimation * redToDark = [CABasicAnimation animationWithKeyPath:@"backgroundColor"]; 
redToDark.fromValue = (id)([[UIColor redColor]CGColor]); 
redToDark.toValue =(id)[[UIColor darkGrayColor]CGColor]; 
redToDark.duration = 1; 
redToDark.beginTime = 2; 

CAAnimationGroup * group = [[CAAnimationGroup alloc]init]; 
group.animations = @[darkToBlue,blueToRed,redToDark]; 
group.repeatCount = MAXFLOAT; 
group.duration = 3; 
group.fillMode = kCAFillModeForwards; 
[self.view.layer addAnimation:group forKey:@"colors"]; 
関連する問題