关于ios:在UITextField Action中将UITextField字符串转换为Double

Converting a UITextField String to a Double inside a UITextField Action

我无法将hoursWorked转换为UITextField属性中的double我继续得到"无法使用类型'(UITextField!)'的参数列表调用类型'Double'的初始值设定项"

1
2
3
4
5
6
7
  @IBOutlet weak var hoursWorked: UITextField!

   @IBAction func onEditingChange(sender: UITextField) {
        var hoursWorkedAmount = Double(hoursWorked)
        var salary = hoursWorkedAmount! * 25
        print(salary)
    }

我试图在操场上手工测试所有东西,以便更好地了解我做错了什么,但我不断收到错误。


您需要获取文本字段的文本,而不是文本字段本身。

更改:

1
var hoursWorkedAmount = Double(hoursWorked)

至:

1
var hoursWorkedAmount = Double(hoursWorked.text)

更好的是,将其更改为:

1
var hoursWorkedAmount = Double(sender.text)

这样,您的方法就会对发送事件的实际文本字段起作用。

注意:我不会说流利的Swift。 在text之后可能需要!