我在我的应用程序中通过代码添加导航控制器。所有其他的工作正常,但我的导航栏与状态栏重叠。我尝试添加
if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
self.edgesForExtendedLayout = UIRectEdgeNone;
但它不起作用。
我导航控制器中的其他控制器只在xib中,而不是故事板。 请帮忙。
答案 0 :(得分:1)
我使用以下代码解决了问题(如suggested by Tacettin Özbölük):
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) {
UIView *addStatusBar = [[UIView alloc] init];
addStatusBar.frame = CGRectMake(0, 0, 320, 20);
addStatusBar.backgroundColor = [UIColor colorWithRed:0.973 green:0.973 blue:0.973 alpha:1]; //change this to match your navigation bar
[self.window.rootViewController.view addSubview:addStatusBar];
}
答案 1 :(得分:1)
如果您真的不希望导航栏变为半透明,那么请使用此代码,您的问题将得到解决:
self.navigationController.navigationBar.translucent = NO;