当任何字段留空时,UITextfield 值的总和崩溃
Sum of UITextfield values crashes when any field is left blank
Screenshot of simulator screen
大家好。我最近才开始尝试在 Swift 2 中学习编码。我正在尝试制作一个非常简单的应用程序,我可以在其中添加分数,按下 "calculate" 按钮并在标签中显示总数。如屏幕截图所示,我能够做到这一点。我遇到的问题是,如果我不在其中一个文本字段中输入分数并仍然尝试计算它,它就会崩溃。这是我的代码:
class ViewController: UIViewController {
@IBOutlet weak var score1: UITextField!
@IBOutlet weak var score2: UITextField!
@IBOutlet weak var score3: UITextField!
@IBOutlet weak var total: UILabel!
@IBAction func Calculate(sender: AnyObject) {
let score1 = Int(score1.text!)!
let score2 = Int(score2.text!)!
let score3 = Int(score3.text!)!
let alltogether = (scoreone) + (scoretwo) + (scorethree)
total.text = "Your total score is \(alltogether)!"
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
谁能指出我需要看的方向。我想如果该字段为零,我需要添加某种豁免。或者类似于将默认 int 设置为 0 的内容???谢谢大家!
let score1 : Int = Int(score1.text ?? "") ?? 0
let score2 : Int = Int(score2.text ?? "") ?? 0
let score3 : Int = Int(score3.text ?? "") ?? 0
如果您的字段为空或 non-numerical(或者如果 UITextField
属性 .text
包含 nil
).
Screenshot of simulator screen
大家好。我最近才开始尝试在 Swift 2 中学习编码。我正在尝试制作一个非常简单的应用程序,我可以在其中添加分数,按下 "calculate" 按钮并在标签中显示总数。如屏幕截图所示,我能够做到这一点。我遇到的问题是,如果我不在其中一个文本字段中输入分数并仍然尝试计算它,它就会崩溃。这是我的代码:
class ViewController: UIViewController {
@IBOutlet weak var score1: UITextField!
@IBOutlet weak var score2: UITextField!
@IBOutlet weak var score3: UITextField!
@IBOutlet weak var total: UILabel!
@IBAction func Calculate(sender: AnyObject) {
let score1 = Int(score1.text!)!
let score2 = Int(score2.text!)!
let score3 = Int(score3.text!)!
let alltogether = (scoreone) + (scoretwo) + (scorethree)
total.text = "Your total score is \(alltogether)!"
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
谁能指出我需要看的方向。我想如果该字段为零,我需要添加某种豁免。或者类似于将默认 int 设置为 0 的内容???谢谢大家!
let score1 : Int = Int(score1.text ?? "") ?? 0
let score2 : Int = Int(score2.text ?? "") ?? 0
let score3 : Int = Int(score3.text ?? "") ?? 0
如果您的字段为空或 non-numerical(或者如果 UITextField
属性 .text
包含 nil
).