gpt4 book ai didi

xcode - 通过使用 UIbutton 在 lightContent 和默认值之间切换来更新状态栏外观

转载 作者:行者123 更新时间:2023-11-30 10:02:21 27 4
gpt4 key购买 nike

我正在制作一个允许用户更改主题的应用程序,例如。改变背景颜色。假设我有一个按钮,单击时会切换背景颜色的变化。

例如。在代码中:

@IBAction func floodLightAction(sender: AnyObject) {

previousFloodlightOption = loadFloodlightOption()

if previousFloodlightOption {

print("OFF")

saveFloodlightOption(false)

// configure theme for themeViewController:

UIApplication.sharedApplication().statusBarStyle = .Default

setNeedsStatusBarAppearanceUpdate()

configureFloodlight(false)


} else {

print("ONN")

saveFloodlightOption(true)

// configure theme for themeViewController:

UIApplication.sharedApplication().statusBarStyle = .LightContent

setNeedsStatusBarAppearanceUpdate()

configureFloodlight(true)

}

但是,按下按钮时 setNeedsStatusBarAppearanceUpdate() 似乎不会更新状态栏样式。我有一些自定义函数,如下所述。

我的自定义保存功能:

saveFloodlightOption(bool: Bool) 
  • 这会使用 NSUserDefaults 保存 bool 值。

我的主题配置功能:

configureFloodLight(bool: Bool)
  • 这只是根据所选主题更改 View Controller 中对象的颜色。

希望我提供了足够的信息,谢谢!

最佳答案

您是否在 info.plist 中将基于 View Controller 的状态栏外观设置为false

View Controller Based status bar appearance

关于xcode - 通过使用 UIbutton 在 lightContent 和默认值之间切换来更新状态栏外观,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37744815/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com