首先,我是法国人;对不起,英语错误,希望您能理解我的问题。我仅在iOS应用程序上工作了3个月,也许我还没有掌握所有iOS开发概念。

我有一个使用iOS 5在设备和模拟器上正确运行的应用程序,但是当我在iOS6设备或模拟器上尝试该应用程序时,情况很奇怪。屏幕顶部的导航栏和表视图之间会出现一个黑条。

我进行了一些研究,其他人也遇到了同样的问题,但是解决他们的问题的方法对我不起作用。
另请:Black bar between navigation bar and table view appears on iOS 6

因为我将xcode版本升级到4.5和iOS6 SDK,所以我遇到了这个问题。请参见模拟器的以下屏幕截图,首先运行iOS6,然后运行iOS5。奇怪的是,启动应用程序后,黑条就在这里。如果我更改了选项卡(显然切换了视图控制器),那么黑条将不再存在。

我尝试通过切换tabBar的元素来更改第一个viewController,但是即使我将名为“Tendances”的标签放在首位,也会出现相同的情况。黑条在此视图上,而不在其他视图上。

我已经在iphone 3模拟器上制作了这些屏幕截图,但是使用iphone4或5模拟器或真实设备无法解决我的问题。

屏幕截图1 :我在iOS6模拟器上启动了该应用程序。您可能会看到黑色栏位于导航栏和tableView标头之间。

objective-c - 迁移后导航栏和表格 View 之间的黑条-LMLPHP

屏幕快照2 :我仍在同一模拟(iOS6)上运行同一应用程序,因此我决定使用tabBarController切换选项卡。黑条消失。

objective-c - 迁移后导航栏和表格 View 之间的黑条-LMLPHP

截屏3 :我回到第一个选项卡,然后没有黑条...

objective-c - 迁移后导航栏和表格 View 之间的黑条-LMLPHP

屏幕截图4 :我关闭了另一个运行iOS5的模拟器,该模拟器运行iOS6。然后我启动了该应用程序,您可能会发现没有黑条。

最佳答案

我遇到了完全相同的问题:第一次启动应用程序/这个tableviewcontroller(我是一个fetchedresultscontroller,更清楚地说)时,导航栏的高度会缩小,而黑色栏会出现在导航栏和viewcontroller的项目之间。如果我切换到其他视图控制器(而不是tableview),然后返回,则导航栏将消失,导航栏将恢复其正常大小。我花了最后3个小时来寻找答案,然后尝试一切尝试,但没有任何帮助。

在我的案例中,起作用的是一个非常奇怪的解决方案:使导航栏不可见,然后再次可见。因此,似乎实际上将其加载了两次,第一次是使用黑条,第二次是使用黑条,恢复了正常状态。

在我的viewDidLoad中,我现在有了这个:

[self.navigationController setNavigationBarHidden:YES];

[self.navigationController setNavigationBarHidden:NO];

关于objective-c - 迁移后导航栏和表格 View 之间的黑条,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13158807/

10-10 18:33