Я пытался сказать, что у меня есть один UIView. Я проверю вашу ссылку. :)

могу перейти от одного цвета фона к другому цвету в UIView?

В javascript (jQuery) это можно сделать следующим образом:
$('body').animate({ backgroundColor: "#ff00ff"});

Было бы легче, если бы я конвертировал цвета в HSV?

РЕДАКТИРОВАТЬ: попытался сделать это с CABasicAnimation, но он мигает белым по неизвестным причинам. : /

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

Затем я попытался найти другой способ сделать это и наткнулся на «неявную анимацию». Следующее работает с хорошим исчезновением секунды:

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

Спасибо, StackOverflow, за помощь всем учиться еще больше. :)

 Mads Mobæk24 янв. 2011 г., 18:43

Ответы на вопрос(1)

Решение Вопроса

шнем представлении, висящем вокруг, когда сам атрибут цвета является анимируемым?

Вы можете использовать CAAnimation, как показано выше, но вместо настройки непрозрачности двух видов просто отрегулируйте backgroundColor одного из них.

http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Animation_Types_Timing/Articles/PropertyAnimations.html

 johankj24 янв. 2011 г., 19:18
Я пытался сказать, что у меня есть один UIView. Я проверю вашу ссылку. :)

Ваш ответ на вопрос