今回は Storyboard の UIViewController から SwiftUI の View を表示する手順について紹介します。
UIKit(Storyboard)からSwiftUIのViewを表示する方法
手順は非常に簡単です。SwiftUIに用意されている UIHostingController を使います。
UIHostingController(rootView: _)
rootView: _ には SwiftUI の View を指定します。戻り値に UIViewController を受け取ることができます。
冒頭サンプルの全体コードは以下の通りです。Storyboardには予めボタンを用意しておきます。
import SwiftUI
struct SwiftUIView: View {
var body: some View {
Text("Hello, World!")
}
}
import UIKit
import SwiftUI
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func buttonTapped(_ sender: Any) {
let view = UIHostingController(rootView: SwiftUIView())
self.present(view, animated: true, completion: nil)
}
}
UKitで現在進行中のプロジェクトでも、途中からSwiftUIに移行することができますね。
以上
コメントを残す