iOS15から、EnvironmentValuesにdismissが追加されました。
これまでUIKitのアプリ内からSwiftUIのモーダルを表示してから閉じるにはハックが必要でしたが、これによって簡単に閉じられるようになります。
struct ContentView: View {
@Environment(\.dismiss) var dismiss
var body: some View {
Button {
dismiss()
} label: {
Text("dismiss")
}
}
}
UIKitベースのアプリの中に1画面だけSwiftUIにすることがこれで簡単に行えるようになりました。