gpt4 book ai didi

swift - 如何不断检查 bool 的值是否为 true/false? swift

转载 作者:搜寻专家 更新时间:2023-10-30 23:05:10 25 4
gpt4 key购买 nike

你好,我的问题很简单,我必须不断检查 bool 的值是真还是假,到目前为止我尝试的是使用:

override func update(_ currentTime: TimeInterval) 

功能 swift ,它是快速的方式,一旦它检查值,它将不断重复该 Action ,即使我只希望它只执行一次 Action ,所以基本上我想说的是我想要的要做的是检查一次 bool 值是真还是假,然后停止检查,直到它再次发生变化。请帮助,谢谢。

最佳答案

属性观察员

您可以在 Swift 中使用 Property Observers 来完成您需要的...以下是文档中关于这些的内容:

Property observers observe and respond to changes in a property’s value. Property observers are called every time a property’s value is set, even if the new value is the same as the property’s current value.

willSetdidSet 属性观察者:

  • willSet 在存储值之前被调用。

  • didSet 在新值存储后立即被调用。

要解决您的问题,您可以这样做:

 var myProperty:Int = 0 {

willSet {
print("About to set myProperty, newValue = \(newValue)")
}

didSet{
print("myProperty is now \(myProperty). Previous value was \(oldValue)")
}
}

您可以在您的属性(property)上实现一个或两个属性(property)观察者。

Getter 和 Setter

作为替代方案,您可以在存储的属性上使用 getter 和 setter 来解决您的问题:

private var priv_property:Int = 0

var myProperty:Int{

get {
return priv_property
}

set {
priv_property = newValue
}
}

计算属性实际上并不存储值。相反,它们提供一个 getter 和一个可选的 setter 来间接检索和设置其他属性和值。

关于swift - 如何不断检查 bool 的值是否为 true/false? swift ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42871158/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com