【问题标题】:Has Swift compilation condition for SwiftUI preview environment?SwiftUI 预览环境有 Swift 编译条件吗?
【发布时间】:2022-01-18 14:23:06
【问题描述】:

Objective C 具有预处理器,Swift 具有编译条件,允许在不同的环境中使用不同的代码,例如用于调试或发布构建:

#if DEBUG
    print("debug message")
    doDebugAction()
#else
    doReleaseAction()
#endif

我可以添加只为 SwiftUI 预览编译的代码吗?比如:

#if targetEnvironment(swiftUIPreview) 
    static func mock() -> SomeStruct {
        // fill random data
    } 
#endif

【问题讨论】:

    标签: swift swiftui conditional-compilation


    【解决方案1】:

    不幸的是它不存在任何编译条件afaik,但你可以使用ProcessInfo

    ProcessInfo.processInfo.environment["XCODE_RUNNING_FOR_PREVIEWS"] == "1"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-05
      • 1970-01-01
      • 2018-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多