【问题标题】:How Can I Pass Function Through A Toggle Swiftui如何通过切换 Swiftui 传递函数
【发布时间】:2022-01-06 20:21:42
【问题描述】:

状态变量:

@State var toggleIsOn = false

切换:

Toggle(isOn: $toggleIsOn, label: {Text("Notifications")})

我想要以下按钮,代表开关的每个状态,打开和关闭:

                // Will request to send notifications, if success; will schedule them.
                Button("request") {
                    NotificationManager.instance.requestAuthorization()
                }
                // Will clear the queue of notifications, and delete any delivered.
                Button("cancel") {
                    NotificationManager.instance.cancelNotifications()
                }

我在这个视频中找到了函数:https://www.youtube.com/watch?v=mG9BVAs8AIo

【问题讨论】:

    标签: function swiftui notifications switch-statement toggle


    【解决方案1】:

    使用

    onChange(of:)

    例如:

        struct ContentView: View {
        @State var toggleIsOn: Bool = false
    
        var body: some View {
            Toggle(isOn: $toggleIsOn, label: {Text("Notifications")})
            .onChange(of: toggleIsOn) { isOn in
                 if isOn {
                      NotificationManager.instance.requestAuthorization()
                 } else {
                      NotificationManager.instance.cancelNotifications()
                 }
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2017-02-10
      • 2021-03-24
      • 1970-01-01
      • 2018-04-02
      • 1970-01-01
      • 2015-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多