2012-02-17 98 views

回答

5

这个答案请看:https://stackoverflow.com/a/5814846/656036

[UIView beginAnimations:@"suck" context:NULL]; 
[UIView setAnimationTransition:103 forView:webView cache:NO]; 
[UIView setAnimationDuration:1.5f]; 
[UIView setAnimationPosition:CGPointMake(300, 1)]; 
[UIView commitAnimations]; 

注意,这使得使用私有API的,将让您的应用被苹果拒绝。对于其他动画转换请参阅http://iphonedevwiki.net/index.php/UIViewAnimationState

编辑:iphonedevwiki.net似乎被关闭。不过,我发现的东西,可以帮助你重现效果,而不是让你拒绝:(未测试)http://www.aderstedtsoftware.com/users/erik/weblog/c7cb9/

不同AnimationStates有以下几方面(从链接的SO回答):

// Efects for Animation. 
// 0 (UIViewAnimationTransitionNone)         Yes  
// 1 (UIViewAnimationTransitionFlipFromLeft)  oglFlip, fromLeft Yes  
// 2 (UIViewAnimationTransitionFlipFromRight) oglFlip, fromRight Yes  
// 3 (UIViewAnimationTransitionCurlUp)   pageCurl   Yes  
// 4 (UIViewAnimationTransitionCurlDown)   pageUnCurl   Yes  
// 101 pageCurl             Yes 
// 102 pageUnCurl             Yes 
// 103 suckEffect             Yes 
// 104 spewEffect             No 
// 105 cameraIris             Yes 
// 106 cameraIrisHollowClose          Yes 
// 107 cameraIrisHollowOpen          Yes 
// 108 genieEffect             No 
// 109 unGenieEffect            No 
// 110 rippleEffect            Yes  
// 111 twist              No 
// 112 tubey              No 
// 113 swirl              No 
// 114 charminUltra            No 
// 115 zoomyIn              No 
// 116 zoomyOut             No 
// 117 oglApplicationSuspend          No 
//--------------------------------------------------------------------- 
+4

第二个链接是指向无处。 – 2012-02-17 23:28:51

0

使用的特定动画是私人API,很可能会被拒绝。然而,它被广泛记载,你可以通过在SO上搜索找到它。

您可以通过拍摄视图的图层并同时通过旋转,应用透视图以及使用Core Animation移动/缩放视图来近似转换使用的动画。

How to make "suckEffect" to the left corner of iPhone?

1

你可以使用CAAnimation动画缩放图像。

有一个来自WWDC 2010的iTunes名为的动画驱动接口的视频演练。这将帮助您开始。请务必在WWDC 2010中检查CoreAnimation in Practice Part 1/2。这真的是高质量的教程。