我已经运行到我的基于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];
}