This package allows you to quickly setup Xcode canvas to any UIView/ViewController.
Run emulator everytime you need to test a small change in your View is painfull.
✓ Xcode 11+
✓ Swift 4.2+
✓ iOS 13+ project
Select your project on Xcode and go to Files
> Add Packages
and paste this repository URL https://github.com/outrowender/UIViewCanvas
on search field.
Select a version and click Install
.
Add the previewer to the end of your view file:
import SwiftUI
import UIViewCanvas
struct MyPreview: PreviewProvider {
static var previews: some View {
ViewCanvas(for: MyCustomUIView())
}
}
You can instantiate a entire ViewController as well, using ViewControllerCanvas
:
struct MyPreview: PreviewProvider {
static var previews: some View {
ViewControllerCanvas(for: MyViewController())
}
}
If you want to customize your preview, check Group
component and use a .previewLayout
to set a custom canvas to your preview.
struct MyPreview: PreviewProvider {
static var previews: some View {
Group{
ViewCanvas(for: MyCustomUIView())
}
.previewLayout(.fixed(width: 350, height: 350))
}
}
You may need to reopen your .swift
file in Xcode.
You can use ⌥ + ⌘ + P
to quickly resume your canvas.
This package was a insight that I got from a @bhlvoong video.