当我点击一个按钮时,我试图将标签增加2.
import UIKit
class ViewController: UIViewController {
var cur = 0;
@IBOutlet weak var money: UILabel!
@IBAction func pressbutton(sender: UIButton) {
cur = money.text!.toInt()!;
self.money.text = String(cur + 2);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我当前的代码,但我收到错误
toInt()是不可用的:使用Int()初始值设定项
在这条线上
cur = money.text!.toInt()!;
Run Code Online (Sandbox Code Playgroud)
Ian*_*Ian 10
根据MVC编程,您不应该使用标签的内容来增加标签.相反,使用变量来存储Int和更新标签,方法是向变量添加属性观察器,如下所示:
class ViewController: UIViewController {
@IBOutlet weak var someLabel: UILabel!
var someValue: Int = 0 {
didSet {
someLabel.text = "\(someValue)"
}
}
override func viewDidLoad() {
super.viewDidLoad()
someValue = 0 // didSet is called when the variable is changed, not upon initialization.
}
@IBAction func buttonPressed(sender: UIButton) {
someValue += 2
}
}
Run Code Online (Sandbox Code Playgroud)
此外,我会考虑将您的变量重命名为更具描述性的变量cur,并且您可以省略分号,因为它们是不必要的.
您可以通过将有问题的代码更改为以下内容来修复此错误:
cur = Int(money.text!)!;
Run Code Online (Sandbox Code Playgroud)
在此处阅读有关初始值设定项的更多信息。摘录:
初始化是准备类、结构或枚举的实例以供使用的过程。此过程涉及为该实例上的每个存储属性设置初始值,并执行新实例可供使用之前所需的任何其他设置或初始化。
| 归档时间: |
|
| 查看次数: |
9497 次 |
| 最近记录: |