小编Moa*_*aga的帖子

如何在 SwiftUI 应用程序生命周期中更改 StatusBarStyle?

我已经花了很多时间试图找出一种使用新生命周期SwiftUI AppstatusBarStyle更改为亮/暗的方法。

关于状态栏的最新帖子教如何隐藏它,但我不想这样做,我只需要将其更改为深色或浅色即可。

要更改颜色,我发现的最新方法是打开SceneDelegate.swift并更改window.rootViewController以使用我自己的HostingController,但它仅适用于使用UIKit App Delegate Lifecycle 的项目。使用SwiftUI App LifecycleSceneDelegate.swift不会生成,那么我在哪里可以做呢?

我可以通过 Xcode 界面上的常规设置来完成。我的问题是如何通过代码动态地做到这一点。

  • 目标:iOS 14
  • IDE:Xcode 12 测试版 3
  • 操作系统:MacOS 11 Big Sur

以下是我到目前为止所得到的。

一切.swift

import Foundation
import SwiftUI

class LocalStatusBarStyle { // style proxy to be stored in Environment
    fileprivate var getter: () -> UIStatusBarStyle = { .default }
    fileprivate var setter: (UIStatusBarStyle) -> Void = {_ in}

    var currentStyle: UIStatusBarStyle …
Run Code Online (Sandbox Code Playgroud)

colors statusbar ios swift swiftui

8
推荐指数
1
解决办法
1792
查看次数

标签 统计

colors ×1

ios ×1

statusbar ×1

swift ×1

swiftui ×1