2010-06-27 105 views

回答

1

的最簡單的解決辦法是有向的ImageView或CGLayers然後使用CGAffineTransformTranslate在動畫block滑動它們關閉屏幕。

5

我不確定爲什麼人們建議使用翻譯。如果您只需滑動圖像,只需在動畫塊內的每個圖像視圖上調用-setCenter即可。就像這樣:

[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:1.0]; 
[leftCurtainImageView setCenter:pointOffScreenLeft]; 
[rightCurtainImageView setCenter:pointOffScreenRight]; 
[UIView commitAnimations]; 

凡pointOffScreenLeft和pointOffScreenRight計算是這樣的:

CGPoint pointOffScreenLeft = CGPointMake(
       -[leftCurtainImageView bounds].size.width, 
       [leftCurtainImageView frame].origin.y); 

CGPoint pointOffScreenRight = CGPointMake(
       [rightCurtainImageView frame].origin.x + 
       [rightCurtainImageView bounds].size.width, 
       [leftCurtainImageView frame].origin.y); 

上述計算假設窗簾分別位於最左邊和最右邊的邊包含它們的看法。