MENU

【SwiftUI】ボタンを押したときにアクションシートを表示するには?

記事内に商品プロモーションが含まれる場合があります

ボタンを押したタイミングでアラートを表示したい場合は、次のようにボタンにactionSheetモディファイアを付けて使います。

このモディファイアは、指定された パラメータが true の場合にアクションシートを表示します。

struct ContentView: View {
    // アクションシートを表示するための状態変数
    @State private var showingActionSheet = false

    var body: some View {
        // ボタンを作成し、タップされたらアクションシートを表示する
        Button("アクションシートを表示") {
            self.showingActionSheet.toggle()
        }
        // actionSheet修飾子を使用してアクションシートを定義
        .actionSheet(isPresented: $showingActionSheet) {
            ActionSheet(
                // アクションシートのタイトル
                title: Text("アクションを選択"),
                // アクションシートのメッセージ
                message: Text("何をしたいですか?"),
                // アクションシートに表示するボタンの配列
                buttons: [
                    // デフォルトボタン1
                    .default(Text("オプション1")) {
                        // オプション1が選択された時の処理
                        print("オプション1が選択されました")
                    },
                    // デフォルトボタン2
                    .default(Text("オプション2")) {
                        // オプション2が選択された時の処理
                        print("オプション2が選択されました")
                    },
                    // キャンセルボタン
                    .cancel() {
                        // キャンセルボタンがタップされた時の処理
                        print("アクションシートが閉じられました")
                    }
                ]
            )
        }
    }
}
目次

SwiftUIが学べる書籍

Share

Comment

コメントする

目次