Я использую стороннюю библиотеку, разработанную с UIKit
. Для его API требуется ссылка на UIView.
Как я могу использовать эту библиотеку внутри SwiftUI? И как я могу преобразовать представление SwiftUI в UIView?
Я пытался создать UIViewRepresentable
, например:
struct SomeView: UIViewRepresentable {
let contentViewController: UIViewController
init<Content: View>(contentView: Content) {
self.contentViewController = UIHostingController(rootView: contentView)
}
func makeUIView(context: Context) -> UIKitView {
// Whatever I do here doesn't work. Frame is always 0
contentViewController.loadViewIfNeeded()
contentViewController.view.setNeedsDisplay()
contentViewController.view.layoutIfNeeded()
print(contentViewController.view.frame)
let uikitView = UIKitView()
uikitView.show(contentViewController.view)
return popover
}
func updateUIView(_ uiView: UIKitView, context: Context) {
}
}