当前位置: 首页 > 面试题库 >

设置statusbarStyle(在iOS 9.0中已弃用)

陈扬
2023-03-14
问题内容

刚刚下载了新的xCode 10.0,并发现自iOS 9.0起不赞成使用旧的statusBarStyle。

警告: Setter for 'statusBarStyle' was deprecated in iOS 9.0: Use -[UIViewController preferredStatusBarStyle]

不推荐使用的代码: UIApplication.shared.statusBarStyle = .default

我尝试使用self.preferredStatusBarStyle,但发现该属性只是一个吸气剂。所以谁知道如何设置statusBarStyle

编辑

我想在一个函数内更改statusBarStyle,用户可以在其中切换不同的主题。例如:

func changeStatusBar(toDarkMode: Bool) {
    if toDarkMode {
        // Set to light statusBarStyle
    } else { 
        // Set to default
    }
}

问题答案:

使用与现在相同的代码设置darkMode变量,然后在系统期望的计算变量中使用它:

var darkMode = false
override var preferredStatusBarStyle : UIStatusBarStyle {
    return darkMode ? .default : .lightContent
}

根据上下文,您可能需要强制刷新屏幕以使其生效。您可以通过以下调用进行操作:

setNeedsStatusBarAppearanceUpdate()


 类似资料:
  • 我刚开始编译iOS 11,注意到苹果现在宣布了这个属性 由于不赞成: https://developer.apple.com/documentation/uikit/uiviewcontroller/1621372-automaticallyadjustsscrollviewin iOS 11中是否有其他属性修复此警告? 默认值会保持为真吗?或者将来会如何处理?

  • 问题内容: 我正在尝试更新到Hibernate 4,并且我不赞成使用org.hibernate.annotations.Entity。但是,没有任何文档似乎表明是这种情况。有人对此有任何见识吗? 问题答案: 是的,在4.0+中已弃用: 您应该改用 这是固定的JIRA谈论它。

  • 问题内容: 我看到iOS 9 现在已被弃用,文档说应该改为使用,但是如果我仍然想用幻灯片动画隐藏状态栏,iOS 9中的替代方法是什么? 问题答案: 参考, Gif 码

  • 问题内容: 我们需要能够获得hibernate会话的关联。没有其他连接可用,因为此连接可能与正在运行的事务关联。 如果现在不建议使用session.connection(),我应该怎么做? 问题答案: 现在,您必须使用Work API: 或者,在Java 8+中:

  • 问题内容: 今天,我决定将我的android应用程序从Java转换为Kotlin!:)但是,当我输入以下内容时,我感到非常惊讶: 然后Android Studio告诉我:“’getActionView(MenuItem!):View!’ 已弃用。Java中已弃用“ 因此,在问您解决方案之前,我先问谷歌解决方案是什么,我相信我找到了解决方案:“直接使用getActionView()”。 所以我像这样

  • 目前我正在开发一个带有三个菜单项的底部导航栏的应用程序。我曾使用来单击项目。但现在我面临的问题是该方法已贬值。 应用程序语言:Java 问题:“setOnNavigationItemSelectedListener(com.google.android.material.bottomnavigation.BottomNavigationView.OnNavigationItemSelectedLi