- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
你好,我的问题很简单,我必须不断检查 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.
有 willSet
和 didSet
属性观察者:
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/
如果这不是一个错误,那就是另一个错误。如果不是那样的话,那就是别的东西了。我觉得我的项目已经改变了很多,现在只是试图解决代码签名问题,结果一切都搞砸了。我严格按照说明进行操作,但出现错误,例如当前的“
我不确定是否有一些我不知道的内置变量或规则,或者 make 是否有问题,或者我只是疯了。 对于我的一个项目,我有一个如下的 makefile: CC=g++ CFLAGS=-O3 `libpng-co
我有大约 10 个 div,它们必须不断翻转,每个 div 延迟 3 秒 这个 codrops 链接的最后一个效果是我正在寻找的,但无需单击 div http://tympanus.net/Devel
我如何使用 jQuery 持续运行 PHP 脚本并每秒获取响应,以及将鼠标上的少量数据发送到同一脚本? 我真的必须添加一些随机扩展才能让这么简单的计时器工作吗? 最佳答案 To iterate is
JBoss 4.x EJB 3.0 我见过如下代码(大大简化): @Stateless @TransactionAttribute(TransactionAttributeType.NOT_SUPPO
使用 PHPStorm,我试图忽略每次尝试进行 git 提交时 pop 的 workspace.xml。 我的 .gitignore 看起来像: /.idea/ .idea/workspace.xml
我是一名优秀的程序员,十分优秀!