所以我试图在我的应用程序中创建一个简单的函数,其中一个按钮在按下时为标签添加1个整数,另一个按钮清除它。
以下是代码:
class ViewController: UIViewController {
var number = 0
@IBOutlet weak var tapCount: UILabel!
@IBAction func plusTapped(sender: AnyObject) {
number = number + 1
tapCount.text = String(number)
}
@IBAction func minusTapped(sender: AnyObject) {
var totalNumber = number - number
tapCount.text = String(totalNumber)
}
然而,当点击减号按钮时标签会清除,但是当点击加号按钮后,它会在按下减号按钮之前从前一个数字加起来。
如何以某种方式修复此问题,以便实际清除标签?
答案 0 :(得分:3)
@IBAction func minusTapped(sender: AnyObject) {
number = 0 // add this line to reset the counter, the real number
tapCount.text = String(number)
}
答案 1 :(得分:0)
尝试
@IBAction func minusTapped(sender: AnyObject) {
number = 0
tapCount.text = String(0)
}
答案 2 :(得分:0)
我认为这是因为当您处理点击减号时,您正在改变局部变量而不是更改数字本身。你应该改变"数字"太。在我们的代码中查看我的评论
class ViewController: UIViewController {
var number = 0
@IBOutlet weak var tapCount: UILabel!
@IBAction func plusTapped(sender: AnyObject) {
number = number + 1
tapCount.text = String(number)
}
@IBAction func minusTapped(sender: AnyObject) {
//here totalNumber is changed but number is still the same
var totalNumber = number - number
tapCount.text = String(totalNumber)
}