我正试图为UILabel类的backgroundColor
属性设置动画并且到目前为止都没有成功。这是我的代码片段
-(void) blink {
UIColor* originalColor = lblDescription.backgroundColor;
lblDescription.backgroundColor = [UIColor yellowColor];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
lblDescription.backgroundColor = originalColor;
[UIView commitAnimations];
}
//this code works if lblDescription is UIView and does not if UILabel
我发现一些声称某些UILabel属性不具有动画效果,但我无法通过阅读Apple文档来证实这一说法。我想知道是否有人可以解释这个问题。
答案 0 :(得分:4)
在this page from the View Programming Guide For iOS上,“表1-2可动画属性”应该列出UIViews的所有可动画属性。它不包括backgroundColor。
但是在UIView类引用中,在backgroundColor属性下它表示:
<强>讨论强>
可以对此属性的更改进行动画处理。默认值为nil。
所以不清楚为什么UILabel的backgroundColor没有动画。
我过去使用的解决方法是使用CATextLayer而不是UILabel。
答案 1 :(得分:0)