Connect with us

Code

UIViewCanvas – SwiftUI PreviewProvider for UIView

This package allows you to enable a SwiftUI Xcode canva to a UIView or a entire ViewController.

Why?

Run emulator everytime you need to test a small change in your View is painfull.

Requirements

✓ Xcode 11+
✓ Swift 4.2+
✓ iOS 13+ project

How to use?

Step 1

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.

Step 2

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))
    }
}

Step 3

You may need to reopen your .swift file in Xcode.

You can use ⌥ + ⌘ + P to quickly resume your canvas.

UIViewCanvas on GitHub: https://github.com/outrowender/UIViewCanvas
Platform: iOS
⭐️: 8
Advertisement

Trending