以下情況。 我有一個應用程序使用UINavigationController進行導航。在推送UINavigationController時動畫UIView
對於推動一個特殊的導航控制器我想要一個自定義的動畫,縮小。 我現在看起來不錯,唯一的問題是,「老」Viewcontroller在動畫開始之前消失,所以新的viewcontroller放大了「沒有」,而不是在後臺查看舊的viewcontroller。
爲了更好地觀看我創建了一個簡單的示例應用程序:download
有誰知道,如何動畫新視圖 - 控制(圖像3)舊視圖控制器(圖像1)保持在動畫背景(圖片2)?
/* THIS CANNOT BE CHANGED */
AnimatedViewController *animatedViewController = [[AnimatedViewController alloc] initWithNibName:@"AnimatedViewController" bundle:nil];
/* THIS CAN BE CHANGED */
animatedViewController.view.transform = CGAffineTransformMakeScale(0.01, 0.01);
[UIView beginAnimations:@"animationExpand" context:NULL];
[UIView setAnimationDuration:0.6f];
animatedViewController.view.transform=CGAffineTransformMakeScale(1, 1);
[UIView setAnimationDelegate:self];
[UIView commitAnimations];
/* THIS CANNOT BE CHANGED */
[self.navigationController pushViewController:animatedViewController animated:NO];
附加信息:我的應用程序並不那麼簡單。我爲我的應用程序使用了three20框架,但視圖控制器的推動和創建正是three20所做的。我只能鉤進(我的代碼中的THIS CAN BE CHANGED
)之間的部分。我無法在此之前和之後更改代碼(除了大量研究)。
如何設置相同的動畫(啓示方向),同時彈出到原始視圖..? – 2013-03-06 14:37:32