SwiftUI 预览画布忽略区域设置

Ily*_*lya 17 xcode preview swiftui

这不起作用:

.environment(\.locale, .init(identifier: "es"))

预览画布仍然显示英语值...如果我在模拟器上运行应用程序并更改设备设置中的语言,本地化可以正常工作。但它在预览画布中不起作用。

这是我正在使用的代码:

Text("SomeLocalizableStringKey")
...
static var previews: some View {
        ForEach(["iPhone 8", "iPhone X", "iPhone XS Max"], id: \.self) { deviceName in
            MainContentView()
                .environment(\.locale, .init(identifier: "es")) // << this seems to be ignored by the preview
                .previewDevice(PreviewDevice(rawValue: deviceName))
                .previewDisplayName(deviceName)
                
            }
    } 
Run Code Online (Sandbox Code Playgroud)

代码 12.5.1

Ach*_*gar 4

这就是我让它发挥作用的方式。

  1. 编辑方案 -> 运行 -> 选项 -> 在应用程序语言下设置您想要的语言。

  2. 清理构建文件夹(Command + Shift + K)