Swift Package Manager iOS 13.0 + tvOS 13.0

Mattt 的精美 gist 将用于获取 UIViews 的 SwiftUI 预览功能转化为 Swift 包。

UIViewPreview Swift 包

Swift 包包含

请在 NSHipster 博客文章中阅读更多关于 UIViewPreview 用例的信息:https://nshipster.com/swiftui-previews/

要求

安装

Swift Package Manager

.package(url: "https://github.com/bielikb/UIViewPreview.git", from: "1.0.0") 添加到您的 Package.swift 文件的 dependencies 中。

如果您正在使用 Xcode 11.0,请使用 Xcode 将 UIViewPreview Swift 包添加到您的 target(s) 中。

PreviewProvider(官方 Apple 文档)

/// Produces view previews in Xcode.
///
/// Xcode statically discovers types that conform to `PreviewProvider` and
/// generates previews in the canvas for each provider it discovers.
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
public protocol PreviewProvider : _PreviewProvider

示例

import UIViewPreview

#if canImport(SwiftUI) && DEBUG
import SwiftUI
@available(iOS 13.0, *)
struct Label_Preview: PreviewProvider {
    static var previews: some View {
        UIViewPreview {
            let label = UILabel()
            label.frame = CGRect(origin: .zero,
                                 size: CGSize(width: 100, height: 100))
            label.text = "Text previewed in SwiftUI Preview"
            return label
        }
    }
}
#endif

Sample

LICENSE(许可证)

https://unlicense.org