ios - 状态栏的背景颜色在使用滚动视图时变为白色

时间:2017-08-16 07:20:31

标签: ios swift uinavigationcontroller background-color statusbar

我是新手,试图实现滚动视图。当我使用滚动视图而不嵌入导航控制器时,状态栏背景颜色不会像我想的那样改变。

Good

但是当我嵌入导航控制器时,状态栏的背景颜色变为白色。

Bad

当我嵌入导航控制器时,如何防止状态将其颜色更改为白色。感谢。

这是约束。 Constraints

3 个答案:

答案 0 :(得分:0)

在导航控制器后尝试此操作:

unit_price = in.readByte() == 0x00 ? null : in.readFloat();

答案 1 :(得分:0)

查看基于控制器的状态栏外观= False / True

此外,还有可编程的方法。请告诉我你是否想要那个

答案 2 :(得分:0)

发生这种情况是因为状态栏与您嵌入的导航栏共享相同的背景。在主视图中,在viewDidLoad()下添加以下代码并根据需要设置背景颜色:

    self.navigationController?.hidesBarsOnSwipe = true

    /* creates a View using the navigation bar frame to place under the status bar but above the navigation bar */

    let statusBarView = UIView()
    statusBarView.backgroundColor = .blue
    statusBarView.frame = UIApplication.shared.statusBarFrame
    UIApplication.shared.keyWindow?.addSubview(statusBarView)