首页 > 解决方案 > SwiftUI:如何将字体颜色保持在顶部边缘区域?

问题描述

我在应用程序中使用自定义黑色背景,因此我使用此代码忽略 SafeArea

   var body: some View {
        ZStack {
            Color.backgroundColor
//                vertical  only for bg  color but how do I keep
//                the color of the font ?
                
               .edgesIgnoringSafeArea(.vertical)

在黑暗模式下一切都很好

在此处输入图像描述

但在灯光模式下,时间、天线和电池是不可见的 在此处输入图像描述

有没有办法将自定义背景保持在顶部区域,但即使用户正在使用灯光模式,也可以将时间、电池等显示为白色?

标签: swiftui

解决方案


您可以选择.preferredColorScheme

var body: some View {
  ZStack {...}
      .preferredColorScheme(.dark) // white tint on status bar
}

var body: some View {
  ZStack {...}
      .preferredColorScheme(.light) // black tint on status bar
}

推荐阅读