2012-11-14 102 views
10

大家好! 我遇到了UINavigationController的動畫問題。 我有主詳細視圖。查看一個按鈕,這是打開的詳細視圖。 詳細視圖正常打開,正常的標題動畫和內容滑動。但是當我點擊後退按鈕,標題動畫正確,細節內容瞬間消失而不是動畫。 這裏是問題示範鏈接:https://www.youtube.com/watch?v=C4UApAhEhx8UINavigationController - 流行動畫bug

如果要打開我使用標準

AboutViewController *aboutViewController = [[AboutViewController alloc] initWithNibName:@"AboutViewController_iPhone" bundle:nil]; 
[self.navigationController pushViewController:aboutViewController animated:YES]; 

我試圖彈出視圖的代碼,沒有與後退按鈕,但有同樣的問題。

對不起,我的英語不好。 謝謝!

+0

http://www.ralfebert.de/tutorials/iosdev/navigationcontroller/ – Ramz

+0

如果它不工作。請發佈您的代碼用於彈出視圖控制器 – Ramz

+0

[self.navigationController popViewControllerAnimated:YES]; – Yevgen

回答

0

請使用用於回到先前的窗口中的代碼:

[self.navigationController pushViewController動畫:YES];

我認爲它會幫助你。

-1

請使用回到先前的窗口中的代碼:

[self.navigationController popViewController animated:YES]; 
12

如果發生這種情況的地方在你的代碼,你要麼迫使調用將YESviewWillAppear同行的一個或NO,而不是讓iOS的決定,或者如果您與[super viewWillAppear:animated]viewDidAppear不匹配。

+1

+1我一直在尋找原因的天。跟蹤呼叫不匹配做了訣竅。 –

0

我和你的問題完全相同,而我的問題是我在某些視圖控制器的viewwillappear方法中設置了選項卡欄的selectedindex,這會導致導航欄出現一些錯誤。

因此,我只是簡單地將代碼移動到viewdidappear,這修復了錯誤。

希望有一天你可以看到這一點,即使你可能已經解決了這個問題。所以希望這會幫助其他人。

1

我有同樣的問題,米哈的回答指出我在正確的方向。在我的例子中,我有一個自定義的UITabBarController,我在viewDidAppear中做了一些處理。問題是由於在我的viewDidAppear中缺少[super viewDidAppear:animated];造成的。