Gen*_*ure 6 conditional-compilation swift swiftui
Objective C具有预处理器,Swift具有允许在不同环境中使用不同代码的编译条件,例如用于调试或发布构建:
#if DEBUG
print("debug message")
doDebugAction()
#else
doReleaseAction()
#endif
Run Code Online (Sandbox Code Playgroud)
我可以添加仅针对 SwiftUI 预览进行编译的代码吗?就像是:
#if targetEnvironment(swiftUIPreview)
static func mock() -> SomeStruct {
// fill random data
}
#endif
Run Code Online (Sandbox Code Playgroud)
不幸的是,它不存在任何编译条件,但您可以使用ProcessInfo:
ProcessInfo.processInfo.environment["XCODE_RUNNING_FOR_PREVIEWS"] == "1"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1338 次 |
| 最近记录: |