2
此代码正在使用子类别的uiview的touchesended方法执行,但它不生成动画,它只是立即更改背景颜色。哪里不对?iPhone UIView动画持续时间只能立即生效
self.backgroundColor = [UIColor blackColor];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:20];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
if (score < .40) {
self.backgroundColor = [UIColor redColor];
} else {
self.backgroundColor = [UIColor greenColor];
}
[UIView commitAnimations];
是否当您从调用它,它的工作另一个地方,在子类中,甚至在子类之外? – mvds 2010-08-09 00:57:52
正在改变真正的动画颜色? – lukya 2010-08-09 04:25:13
虽然不太可能,但“20”可能被解释而不是被视为浮动。试着给它20.0。此外,请仔细检查该颜色是否为Apple开发人员文档中的“动画属性”。 – mtrc 2010-08-09 15:35:34