Iphone UIDABBARCONTROLLER,动画会导致其他视图在没有UINavigationController的情况下滑动

Iphone UIDABBARCONTROLLER,动画会导致其他视图在没有UINavigationController的情况下滑动,iphone,animation,uinavigationcontroller,uitabbarcontroller,Iphone,Animation,Uinavigationcontroller,Uitabbarcontroller,我觉得我的基于TabBar的应用程序遇到了一个动画问题。我有四个选项卡栏项,其中三个有UINavigationControllers,其中一个只有一个常规视图控制器。问题是,在更改为带有动画的视图后,第一个没有UINavigationController的选项卡在更改栏时似乎不再具有正确的大小/位置 最初,您可以一步一步地浏览所有四个选项卡,但在使用动画视图后,第一个视图将显示一个向下滑动的动画,就好像它的位置不正确一样。相反,当激活时,其他视图将“向上滑动”约20px。第一个视图在IB中没有自

我觉得我的基于TabBar的应用程序遇到了一个动画问题。我有四个选项卡栏项,其中三个有UINavigationControllers,其中一个只有一个常规视图控制器。问题是,在更改为带有动画的视图后,第一个没有UINavigationController的选项卡在更改栏时似乎不再具有正确的大小/位置

最初,您可以一步一步地浏览所有四个选项卡,但在使用动画视图后,第一个视图将显示一个向下滑动的动画,就好像它的位置不正确一样。相反,当激活时,其他视图将“向上滑动”约20px。第一个视图在IB中没有自动调整大小,它与其他视图的高度相同。我也尝试过用44px(导航栏的高度)填充它的高度,但它显示了相同的效果

此外,一旦这个错误生效,如果另一个视图第一次被激活;它以一种奇怪的动画方式出现,其各个元素从左下角开始生长并移动到位

任何建议都是值得赞赏的,我倾向于相信它与没有导航控制器的视图的高度或大小有关;或者我的一个视图上的动画没有被正确取消。该视图有以下内容试图阻止它(但它不起作用):


这个问题与不同的观点无关。我打开了一个动画块,但没有关闭它。这不会被捕获为语法错误,但会在每次转换时生成一个永无止境的动画。如果您看到的是滑动视图,我建议查看带有动画的任何位置,并确认块已关闭

-(void)viewWillDisappear:(BOOL)animated {  
  [UIView beginAnimations:nil context:NULL];  
  [UIView setAnimationBeginsFromCurrentState:YES];  
  [UIView setAnimationDuration:0.1];  
  [UIView setAnimationCurve: UIViewAnimationCurveLinear];  
  [UIView commitAnimations];  

  [super viewWillDisappear:false];  
}