[SwiftUI]「シート(Sheet)」に閉じるボタンを追加するには?

SwiftUI
スポンサーリンク

方法

シートに閉じるボタンを追加するには、「presentationMode」という環境値を使います。

struct SheetView: View {
    
    @Environment(\.presentationMode) var presentationMode

    var body: some View {
        Button(action: {

            //閉じる処理
            presentationMode.wrappedValue.dismiss()

        }, label: {

            Text("シートを閉じる")

        })
    }
}

@Environmentの部分で、「presentationMode」という環境値を取得しています。

この環境値は画面の表示に関するデータや処理を持っています。

そして、現在表示している画面を閉じるのには、dismissメソッドを使います。

dismissメソッドを呼び出すことで、シートが閉じられます。

まとめ

Sheetに閉じるボタンを追加する手順をまとめると、次のようになります。

  1. @Environment(\.presentationMode)で環境値を取得
  2. 閉じるボタンで、presentationModeのdismissメソッドを呼び出す

参考

オススメの記事

コメント

タイトルとURLをコピーしました