2009-12-14 104 views
0

我是新來的iPhone的目標編碼。我在單獨的函數中使用下面的代碼來啓動動畫。如何重新啓動UIView動畫

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:10.0]; 
object.transform = CGAffineTransformMakeRotation(1.57); 
[UIView commitAnimations]; 

在此之後我試圖重新啓動動畫在一個以上單獨的函數,該時間之前(即在上面提到的10秒)。

所以,事情是,如果我想在另一個功能(但在同一個.m文件)再次在第5秒重新開始動畫。所以請告訴我如何解決這個問題。

回答

0

如果您在一個已經在處理同一個屬性的過程中開始一個新的動畫,它應該使用新的動畫設置從任何當前值開始對新屬性值進行動畫處理。

所以,當你說你想重置動畫,你的意思是你想讓它回到開始,或者只是做一些不同的事情?如果前者我相信你只需要設置屬性(在這種情況下你的變換)回到它的初始設置並開始一個新的動畫塊。

+0

在上面的代碼中動畫將需要10秒。剛剛完成5秒後,我需要增加動畫的速度。這是我的擔心。 – user229554 2009-12-14 11:37:20

+0

那應該很簡單。使用相同的轉換開始新動畫,但持續時間更短。例如。 5秒後開始新的動畫,而不是2秒。 – philsquared 2009-12-14 14:37:40