Desbotar a cor de fundo de uma cor para outra em um UIView

Como posso desbotar de uma cor de fundo para outra em um UIView?

Em javascript (jQuery), isso pode ser feito da seguinte maneira:
$('body').animate({ backgroundColor: "#ff00ff"});

Seria mais fácil se eu convertesse as cores para HSV?

Edição: tentou fazê-lo com CABasicAnimation, mas pisca em branco por razões desconhecidas. : /

CABasicAnimation* fade = [CABasicAnimation animationWithKeyPath:@"backgroundColor"];
fade.fillMode = kCAFillModeForwards;
fade.removedOnCompletion = NO;
// fade.fromValue = (id)[self.view backgroundColor].CGColor;
fade.toValue = (id)[UIColor greenColor].CGColor;
[self.view.layer addAnimation:fade forKey:@"fade"];

Então tentei encontrar outra maneira de fazer isso e me deparei com a "animação implícita". O seguinte funciona com um bom desvanecimento de segundo:

[UIView beginAnimations:@"fade" context:nil];
[UIView setAnimationDuration:1];
[[self view] setBackgroundColor: [UIColor greenColor]];
[UIView commitAnimations];

Obrigado, StackOverflow, por ajudar todos a aprender ainda mais. :)

questionAnswers(1)

yourAnswerToTheQuestion