2015-09-15 21 views
0

我使用類似的方法進行導航UIViewAnimationOptions描述here爲動畫從一個視圖控制器到另一個:transitionFromView類似像UINavigationController的

UIWindow *window = (UIWindow *)[[UIApplication sharedApplication].windows firstObject]; 
[UIView transitionFromView:window.rootViewController.view 
        toView:vc.view 
        duration:0.65f 
        options:UIViewAnimationOptionTransitionCrossDissolve // transition animation 
       completion:^(BOOL finished){ 
        window.rootViewController = vc; 
       }]; 

展望我沒有發現的一個選項默認動畫,在與UINavigationController相同時發生。

是否有可能獲得相同的動畫行爲(移動視圖左)?怎麼樣?

this動畫試了一下:

[UIView animateWithDuration:0.65 animations:^{ 
    view.transform = CGAffineTransformMakeTranslation(-view.frame.size.width, 0); 
} completion:^(BOOL finished) { 
    // do something 
}]; 

,但在翻譯的新觀點的背景是全黑的,而不是使其他視圖控制器

回答

0

現在我做進去。一種不同的方式。我從我的導航控制器和它的根視圖開始。然後我在堆棧上推另一個視圖控制器。在這個新視圖控制器的viewDidAppear中,我將從導航堆棧中移除第一個視圖控制器。一個缺點是:您可以在短時間內看到後退按鈕。

我試過的動畫解決方案需要另一個視圖控制器動畫。另外我遇到了非常不正確佈局的視圖問題(因爲edgesForExtendedLayout)。

相關問題