Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a way to load swiftUI view into NSView?

I would like to know if it's possible to load a SwiftUI view into an NSView. I was hoping to set the windows content view to aSwiftUI but it seems impossible window?.contentView = view where view is of swiftUI

like image 514
Martinz Chukz Avatar asked Oct 15 '25 18:10

Martinz Chukz


1 Answers

If we talk about AppKit which NSView is part of. There is a way to convert SwiftUI view to NSView using NSHostingView like this:

NSHostingView(rootView: yourSwiftUIView)

So, you can write:

window?.contentView = NSHostingView(rootView: view)

If you need the same for UIKit - use UIHostingController in pretty much similar but slightly more complex way:

UIHostingController(rootView: view).view
like image 193
Denis Avatar answered Oct 18 '25 15:10

Denis