2012-04-08 224 views
6

我怎麼能在屏幕的底部移動一個UIImage在20秒(約35像素/秒)的屏幕頂部我不是說你應該自己拖動它,但它應該自動移動到頂部。謝謝移動uiimageview動畫

回答

18

首先,apple doc是你的朋友。我在這裏給你的所有信息都源於此。蘋果還提供了很多示例代碼,您絕對應該看看它。

你可以(很容易)完成這個任務的方式是使用UIView動畫。假設您的圖像具有UIImageView,則可以使用animateWithDuration:(NSTimeInterval)duration animations:...方法。

例如:

[UIView animateWithDuration:10.0f animations:^{ 
    //Move the image view to 100, 100 over 10 seconds. 
    imageView.frame = CGRectMake(100.0f, 100.0f, imageView.frame.size.width, imageView.frame.size.height); 
}]; 

您可以通過添加更多的選項動畫,讓完成塊等,這都與「animateWithDuration」方法的變化實現更大膽的嘗試。有大量關於UIView動畫的教程和大量的文檔。

如果你不想使用塊(^ {...代碼...}上面位),你可以運行你的動畫是這樣的:

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:10.0f]; 
imageView.frame = ... 
[UIView commitAnimations]; 
+0

感謝的人,你真的。幫助我解決這個問題!我將搜索蘋果樣本並查看vids! – Xcodeuser 2012-04-09 13:04:38

+0

這絕對不是答案。我想知道爲什麼它是一個被接受的。 – 2016-08-17 11:47:08

+0

移動圖像視圖動畫是我正在尋找 – 2016-08-17 11:47:33

3

如果我的理解是,你可以做自己的對象的動畫,在這種情況下,嘗試將beginAnimation

... 
initial position 

[UIView beginAnimation]; 
[UIView setAnimationDuration:dim/35.]; 
[UIView setAnimationCurve:[UIViewAnimationCurveLinear]; 

your animation 

[UIView commitAnimations]; 
... 

與此計算由第二位調光/ 35的計算來獲得你的動畫35px/s的

+0

謝謝你,你真的很有幫助! – Xcodeuser 2012-04-09 13:05:49