UITableViewController中的状态栏

时间:2014-03-21 08:57:31

标签: ios iphone objective-c uitableview

我在按UITableViewController时出现的Navigation Controller使用了UIButton。按下按钮后,TableViewController出现时没有状态栏。如果我选择TableViewController的单元格然后getBack状态栏正确显示。我不知道发生这种情况的原因。我想每次都出现状态栏。我试图从StoryBoard设置状态栏,但它没有用。我也从这里以编程方式尝试了很多解决方案。

这是故事板的一部分,显示TableViewController和已选择的选项。

Storyboard

这是错误的结果:

wrong

如果我选择一个单元格并返回TableViewController我有这个结果:

right

我想每次都得到第三张照片的结果。

P.S。在我的.plist文件中,我将基于控制器的View状态栏外观设置为YES。

我已将viewDidLoad添加到此行:

    [self setNeedsStatusBarAppearanceUpdate];

低于viewDidLoad这种方法:

-(UIStatusBarStyle)preferredStatusBarStyle{
    return UIStatusBarStyleLightContent;
}

它只显示电池寿命。

3 个答案:

答案 0 :(得分:2)

如果将来有人遇到同样的问题,这就是答案。

第1步:将其添加到.plist文件中。

查看基于控制器的状态栏外观---> NO

第2步:这两行到你的appDelegate进入 didFinishLaunchingWithOptions 方法。

[[UIApplication sharedApplication] setStatusBarHidden:NO];

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

答案 1 :(得分:0)

这里有一篇文章解释了如何基于ViewController设置状态栏:iOS 7 and later: set status bar style per view controller

答案 2 :(得分:0)

如果viewDidLoadViewWillAppear中没有与statusBar相关的任何代码,请使用[[UIApplication sharedApplication] setStatusBarHidden:NO animated:NO];使用ViewWillAppear方法编写此代码进行修复。