导航栏的奇怪行为

时间:2011-06-15 14:03:27

标签: iphone

我对NavigationBar有一些非常奇怪的行为,我希望有人之前见过这样的事情。

screenshot of the situation

我有一个用

推送的UIView
[self.navigationController pushViewController:cardView animated:NO];

并且当视图被推动时,我得到的结果可以在上面的图片的前半部分看到。

当我点击一个推动模态视图控制器的按钮然后我返回原始视图(带有一个简单的消除)时,我得到了图片后半部分可以看到的内容。

当视图首次加载时,它显示它不会考虑导航栏的高度并将其放在栏下方。然而,界面构建器中的视图更大,因此它根据条形调整它的大小,但仍然将它们置于它们之下。

从模态视图返回时,它只是将所有内容按下了正确数量的像素,以便所有内容都可见。

就好像有东西强迫它在第一次加载时出现在窗口原点0,0然后从模态视图返回时它会自行修复。

我甚至不知道从哪里开始寻找这个问题。

编辑:我刚刚发现,如果我在上面的代码中设置了动画:YES,它会在之后将它放在正确的位置它在视图中滑动。

1 个答案:

答案 0 :(得分:0)

我通过添加

解决了这个问题
[self.navigationController setNavigationBarHidden:YES];
[self.navigationController setNavigationBarHidden:NO animated:YES];

在viewDidLoad的开头。这导致它以某种方式重置并移动视图。我不能真正看到一个动画。我认为问题的根源可能在于我正在从纵向模式切换到横向模式,并且不知何故混淆了吧。