【问题标题】:Swift: How do I wait until a variable has a certain valueSwift:我如何等到变量具有特定值
【发布时间】:2017-01-17 03:42:57
【问题描述】:

我正在尝试编写等待变量等于某个值的代码。这是我写的代码:

    var i = 0

    for i in 1...10 {
        playtrial()
        repeat {

        } while (WasItCorrect=="")

    WasItCorrect = ""
    }

思路是,函数会调用pl​​aytrial,等到变量WasItCorrect有值(""除外),重置WasItCorrect,然后重复(一共10次)。

代码不会产生错误。但是,在 plastral 完成后,程序似乎停止响应并且不允许按下任何新的输入/按钮。

我认为问题在于我的重复/while 循环永远存在,并且永远不会给其他任何事情发生的机会,因此其他改变 WasItCorrect 值的函数无法运行。作为一个刚开始学习 Swift 的 VisualBasic 6 程序员,我想我需要 Swift 版本的 DoEvents。这是真的吗?

任何有关如何修复此代码的建议将不胜感激。

【问题讨论】:

    标签: swift swift3


    【解决方案1】:

    您可以使用变量的didSet 属性。每当值更改时都会调用它。

    var i = 0 {
        didSet {
            print("Hello World.")
            if i == certainValue {
             // do something
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2022-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-03
      • 2023-02-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多