SwiftUIでコントロールセンターの動きを制御する

はじめに

UIKitではコントロールセンターの動きを制御するの記事にあるように設定することができていたのですが、SwiftUiでは長らくサポートされていませんでしたが、iOS16からサポートされてコントrーるセンターの動きを制御してホーム画面に行きにくくなるモディファイアが追加されました

モディファイア

func defersSystemGestures(on edges: Edge.Set) -> some View

以下のように使用することができます、

.defersSystemGestures(on: .bottom)

動きを制御する際に指定できるパラメータは以下です

static let top: Edge.Set
static let bottom: Edge.Set
static let leading: Edge.Set
static let trailing: Edge.Set
static let horizontal: Edge.Set
static let vertical: Edge.Set

参考文献

[RESOLVE]-PREFERREDSCREENEDGESDEFERRINGSYSTEMGESTURES IN SWIFTUI