2017-06-29 35 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) 
}