2017-06-29 31 views
0

刚开始学习时很快,但试图将输入与另一个数字相乘并显示在标签上时卡住了。我得到错误,数字不是一个字符串,并试图施放,但没有奏效。将UI文本字段与数字相乘 - Swift

class ViewController: UIViewController { 

    @IBOutlet weak var entry: UITextField! 
    @IBOutlet weak var answer: UILabel! 

    @IBAction func button(_ sender: Any) { 

     answer.text = entry.text * 2 
    } 
} 

回答

1

你应该投文成Double,一个Int等,然后计算转换为字符串。

if let entry = Double(entry.text) { 
    answer.text = "\(entry * 2)" 
} 

if let entry = Int(entry.text) { 
    answer.text = "\(entry * 2)" 
} 
+1

要么需要一个'如果let'或(Double(entry.text)!' 与Int类型铸造相同。 – boidkan

+0

@boidkan谢谢,我附上了我的答案。 – the4kman

1

如果您知道该条目将举行一系列

answer.text = String(Int(entry.text)! * 2) 

使用可选的展开,而不是

if let num = Int(entry.text) { 
    answer.text = String(num * 2) 
}