为什么@state在警报解除后被重置

在这里完成 SwiftUI 初学者。我正在查看这个示例,并试图了解@state变量的生命周期。

showingAlert初始化为falsetrue在点击按钮时设置为。我无法理解的部分是为什么它会false在警报解除时重置回?我没有将其设置为false 任何地方。

我希望它会留下来 true

@State private var showingAlert = false

var body: some View {
   Button(action: { self.showingAlert = true }
   ) { 
     Text("Show Alert")
   }
   .alert(isPresented: $showingAlert) {
     Alert(title: Text("Important message"))
   }
}

回答

因为,根据定义,如果解除警报,则不再显示警报。$showingAlert是一个绑定——它在两个方向上移动数据。它的值总是与是否出现警报相关;这就是绑定的意思。


以上是为什么@state在警报解除后被重置的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>