如何从 UITextField 中减去两个值

How To Subtract Two Values From a UITextField

语言:Swift 平台:IOS(iPhone 8 构建)

我有两个 UITextField(都是 IBOutlets)调用: 价格字段 起薪

我有一个名为 enterButton 的按钮

我想做的是在用户输入数字并按下 "enterButton"[=11 后,从 "startingSalary" 的值中减去 "priceField" 的值=]

研究表明我需要在它们相减之前将它们从 String 类型转换为 Int 类型,但我已经在这上面坐了两天,但我似乎无法正确处理。

我还有一个名为 "remainingSalary:, where I want to print the result of "PriceField 的标签" - "startingSalary"

代码:

@IBAction func enterButton(_ sender: UIButton) {

    expensesView.text = " \(expenseField.text!)  \(priceField.text!)"
    let expense1:String = expenseField.text!
    let expense2:String = startingSalary.text!

    remainingSalary;: Int = Int(expense1)! - Int(expense2)!

错误的 表达式解析为未使用的左值 预期表达

任何帮助将不胜感激,因为我似乎无法解决此问题。

remainingSalary 后有一个分号。另外,顺便说一句,如果 expense1 或 expense2 不能转换为 Int,选择崩溃是一个坏主意。下面打印 -1.

let expense1:String = priceField.text ?? ""
let expense2:String = startingSalary.text ?? ""

assert( Int(expense1) != nil && Int(expense2) != nil) 
let remainingSalary: Int = (Int(expense1) ?? 0) - (Int(expense2) ?? 0)
remainingSalaryField.text = "\(remainingSalary)" // sticks the answer into a UITextField named remainingSalaryField.

或者你可以这样写:

remainingSalaryField.text = "\((Int(priceField.text ?? "") ?? 0) - (Int(startingSalary.text ?? "") ?? 0))"