Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift:变量值don';不要结转到迪塞特_Swift_Didset - Fatal编程技术网

Swift:变量值don';不要结转到迪塞特

Swift:变量值don';不要结转到迪塞特,swift,didset,Swift,Didset,这是我在Swift的第一个项目,所以请容忍我 punkteLimit应该用值30初始化。每次更改滑块值时,都应更新变量值和标签 var punkteLimit: Int = 30 @IBAction func sliderPunktelimitChanged(_ value: Float) { punkteLimit = Int(value) labelPunktelimit.setText("Punkte-Limit: \(punkteLimit)") } 这似乎很有效。标

这是我在Swift的第一个项目,所以请容忍我

punkteLimit应该用值30初始化。每次更改滑块值时,都应更新变量值和标签

var punkteLimit: Int = 30

@IBAction func sliderPunktelimitChanged(_ value: Float) {
    punkteLimit = Int(value)
    labelPunktelimit.setText("Punkte-Limit: \(punkteLimit)")
}
这似乎很有效。标签正确更新,即当我将滑块更改为28时,它显示“Punkte Limit:28”。但是,在下一部分中,punkteLimit被固定在初始值30处(considerPunktelimit也是如此,但解决方案应该相同)。无论上述变化如何,触觉反馈都将在gesamtPunkte==30时触发

我使用一个执行gesamtPunkte+=1的按钮来调整值(如果有必要)

var gesamtPunkte: Int = 0 {
    didSet {
        if gesamtPunkte == punkteLimit && considerPunktelimit == true {
            WKInterfaceDevice.current().play(WKHapticType.stop)
        }
        ...
    }
}
我不太确定从这里到哪里去


非常感谢您的帮助。

我通过将相关变量移到InterfaceController类之外(使其成为全局变量?)解决了这个问题。我读过关于这种方法的各种不同意见,如果有人想评论为什么它在课堂上不起作用,以及在使它们全球化方面是否存在问题,请随意评论