Mattt 的精美 gist 将用于获取 UIViews 的 SwiftUI 预览功能转化为 Swift 包。
Swift 包包含
UIViewPreview
UIViewControllerPreview
请在 NSHipster
博客文章中阅读更多关于 UIViewPreview
用例的信息:https://nshipster.com/swiftui-previews/
将 .package(url: "https://github.com/bielikb/UIViewPreview.git", from: "1.0.0")
添加到您的 Package.swift
文件的 dependencies
中。
如果您正在使用 Xcode 11.0,请使用 Xcode 将 UIViewPreview
Swift 包添加到您的 target(s) 中。
/// 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