我已經運行到我的基於TabBar的應用程序的動畫問題(我認爲)。我有四個標籤欄項目,其中三個具有UINavigationControllers,其中一個只具有常規視圖控制器。問題是,改變與動畫視圖後,沒有一個UINavigationController第一個選項卡似乎改變吧,當不再有合適的大小/位置。UITabBarController,動畫導致滑動的其他視圖沒有UINavigationController
最初你能夠通過所有四個選項卡沒有問題的步驟,但動畫視圖已被使用後,第一個視圖將出現一個下滑的動畫,就好像是位置不正確。相反,其他視圖在激活時會「滑動」大約20px。我已經看到了在IB中沒有自動化的第一個視圖,並且它與其他視圖具有相同的高度。我也嘗試了將它的高度填充44px(NavigationBar的高度),但它顯示了相同的效果。此外,一旦此錯誤生效,如果第一次激活另一個視圖,它以一種奇怪的動畫形式出現,其個別元素從左下角逐漸增長並移動到位。
任何建議表示讚賞,我傾向於相信這是涉及到高度或視圖的大小沒有導航控制器;或者我的一個視圖上的動畫未被正確取消。該觀點試圖阻止它(但它沒有工作):
-(void)viewWillDisappear:(BOOL)animated {
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationBeginsFromCurrentState:YES];
[UIView setAnimationDuration:0.1];
[UIView setAnimationCurve: UIViewAnimationCurveLinear];
[UIView commitAnimations];
[super viewWillDisappear:false];
}