Objective c 迁移后导航栏和tableview之间的黑条

Objective c 迁移后导航栏和tableview之间的黑条,objective-c,ios,xcode,ios6,xcode4.5,Objective C,Ios,Xcode,Ios6,Xcode4.5,首先,我是法国人;对不起,我的英语错误,我希望你能理解我的问题。我只开发了3个月的iOS应用程序,也许我还没有掌握所有的iOS开发概念 我有一个应用程序在使用iOS 5的设备和模拟器上正确运行,但当我在iOS 6设备或模拟器上尝试时,我遇到了一个奇怪的情况。屏幕顶部的导航栏和my tableview之间会出现一个黑色条 我做了一些研究,其他人也有同样的问题,但是,解决他们问题的方法对我并不适用。 见: 自从我将xcode版本升级到4.5和iOS6 SDK后,我就面临这个问题。请参阅以下模拟器的屏

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

我有一个应用程序在使用iOS 5的设备和模拟器上正确运行,但当我在iOS 6设备或模拟器上尝试时,我遇到了一个奇怪的情况。屏幕顶部的导航栏和my tableview之间会出现一个黑色条

我做了一些研究,其他人也有同样的问题,但是,解决他们问题的方法对我并不适用。 见:

自从我将xcode版本升级到4.5和iOS6 SDK后,我就面临这个问题。请参阅以下模拟器的屏幕截图,首先运行iOS6,然后运行iOS5。奇怪的是,应用程序刚启动,黑条就出现了。如果我更改了选项卡(显然视图控制器已切换),则黑条将不再存在

我试图通过切换选项卡栏的元素来更改第一个viewController,但即使我将名为“趋势”的选项卡放在第一个中,也会出现相同的情况。黑条位于此视图上,但不在其他视图上

我在iPhone3模拟器上做了这些截图,但使用iphone4或5模拟器或真实设备并没有解决我的问题

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

屏幕截图2:我仍然在同一个模拟(iOS6)上运行同一个应用程序,我决定使用tabBarController切换tab。黑条消失了

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

屏幕截图4:我关闭了运行iOS6的模拟器,以获得另一个运行iOS5的模拟器。我启动了应用程序,然后你可能会看到没有黑条

尝试以下解决方案:


我曾经遇到过同样的问题,在许多SO页面中苦苦挣扎,但这是最终的解决方案。

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

在我的例子中,有效的方法是一个非常奇怪的解决方案:使导航栏不可见,然后再次可见。所以看起来它实际上加载了两次,第一次是用黑条,第二次是,恢复正常

在我的视图中,我现在有:

[self.navigationController setNavigationBarHidden:YES]; 

[self.navigationController setNavigationBarHidden:NO]; 

自动调整蒙版大小将帮助您。检查[this thread][1][1]:它不仅出现在iphone5分辨率上,而且出现在每台运行iOS6I的设备上。我也遇到了这个问题,并在这里找到了答案:我把:
[[UIApplication sharedApplication]setStatusBarHidden:是动画:否]
-(BOOL)应用程序中:(UIApplication*)应用程序使用选项完成启动:(NSDictionary*)启动选项,这个小条消失了,但我不想禁用状态条,顺便说一句,xcode告诉我,自从iOS 3.2以来,
setStatusBarHidden
方法已经被弃用了:/无论如何,谢谢:)@JulienFortin哦,我是说那篇文章的答案:)你试过这两个选项中的任何一个了吗:1)
[self.view setFrame:[[UIScreen mainScreen]bounds]];和/或2)
[viewController.view setFrame:[viewController.view bounds]应该根本不需要隐藏状态栏。