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