代码之家  ›  专栏  ›  技术社区  ›  user-44651

UIStatusBarStyle lightContent在模式呈现的视图控制器上不受重视

  •  2
  • user-44651  · 技术社区  · 8 年前

    我正试图将状态栏的文本颜色从黑色更改为白色,这是一个嵌入在名为

    我正在使用 Chameleon framework 对于颜色。

    我可以使用以下方法更改背景色而不产生任何问题:

    guard let navBar = navigationController?.navigationBar else {fatalError("Navigation controller does not exist.")}
    guard let navBarColour = UIColor(hexString: colourHexCode) else { fatalError()}
    
    navBar.barTintColor = navBarColour
    navBar.tintColor = ContrastColorOf(navBarColour, returnFlat: true)
    navBar.largeTitleTextAttributes = [.foregroundColor : ContrastColorOf(navBarColour, returnFlat: true)]
    

    我试过多种组合 viewWillAppear &安培; viewDidLoad 子视图控制器

    self.modalPresentationCapturesStatusBarAppearance = true
    
    UIApplication.shared.statusBarStyle = .lightContent
    
    setNeedsStatusBarAppearanceUpdate()
    
    setStatusBarStyle(.lightContent)
    
    
    override var preferredStatusBarStyle: UIStatusBarStyle {
        return .lightContent
    }
    

    self.setStatusBarStyle(UIStatusBarStyleContrast) 但同样的,一切都不起作用。

    Info.plist 我有:

    View controller-based status bar appearance = YES

    状态栏样式设置为 Default

    0 回复  |  直到 8 年前
    推荐文章