1.3 Xcode 中的预览
2 分钟阅读
原文链接: https://developer.apple.com/documentation/swiftui/previews-in-xcode
1.3 Xcode 中的预览
为自定义视图生成动态、可交互的预览。
概述
当你用 SwiftUI 创建自定义 View 时,Xcode 可以显示该视图内容的预览,并随着你修改视图代码保持更新。你使用某个预览宏——例如 Preview(_:body:)——告诉 Xcode 要显示什么。Xcode 会在代码旁的画布中显示预览。

不同的预览宏支持不同种类的配置。例如,你可以用 Preview(:traits::body:) 宏添加影响预览外观的特性,或者用 Preview(_:traits:body:cameras:) 宏为预览添加自定义视点。你也可以检查视图在特定场景类型中的行为。例如在 visionOS 中,你可以用 Preview(_:immersionStyle:traits:body:) 宏在 ImmersiveSpace 中预览视图。
基础
- 为界面文件添加预览 —— 编写代码以在不同设备和配置上测试视图,而无需运行应用。
创建预览
- Preview(_:body:) —— 创建 SwiftUI 视图的预览。
- Preview(:traits::body:) —— 用指定的特性创建 SwiftUI 视图的预览。
- Preview(_:traits:body:cameras:) —— 用指定的特性和自定义视点创建 SwiftUI 视图的预览。
- Preview(_:traits:arguments:body:) —— 为一组参数化的 SwiftUI 视图创建预览,让它的输入在所提供的一组实参上变化。
自定义预览
- Previewable() —— 允许动态属性内联出现在预览中的标记。
- PreviewModifier —— 定义预览所处环境的类型。
- PreviewModifierContent —— 类型擦除的预览内容。
在场景上下文中创建预览
- Preview(_:immersionStyle:traits:body:) —— 在沉浸式空间中创建 SwiftUI 视图的预览。
- Preview(_:immersionStyle:traits:body:cameras:) —— 在带自定义视点的沉浸式空间中创建 SwiftUI 视图的预览。
- Preview(_:windowStyle:traits:body:) —— 在窗口中创建 SwiftUI 视图的预览。
- Preview(_:windowStyle:traits:body:cameras:) —— 在带自定义视点的窗口中创建 SwiftUI 视图的预览。
在调试模式下构建
- DebugReplaceableView —— 在调试构建中擦除视图的不透明结果类型。
已弃用
- 已弃用 —— 查阅已弃用的预览符号及其替代方案。