Я пытаюсь создать калькулятор чаевых с помощью swift, но сталкиваюсь с множеством проблем. У меня есть текстовое поле, в котором пользователь вводит сумму счета, а затем он может настроить ползунок, чтобы указать процент, который он хочет чаевые. Мне удалось заставить ползунок и метку, связанную с ним, работать, где изменение значения на ползунке меняет метку. Однако я не могу понять, как заставить текстовое поле работать. Я попытался создать действие для изменяемого текстового поля суммы счета, но независимо от того, что я в него вставил, не похоже, что код выполняется когда-либо (Всякий раз, когда я запускаю код и нажимаю в текстовом поле, клавиатуране уйдет, так что, может быть, это часть проблемы?). Все, что мне нужно, - это иметь возможность получить доступ к значению в поле текстового поля внутри моего действия, когда я нажимаю кнопку вычисления, но, похоже, я даже не могу получить значение, отображаемое намного реже, конвертируя его в двойное число, поэтому яможете выполнить расчеты на нем. Я супер новичок в быстрой и очень хочу узнать, что я делаю не так. Я пробовал несколько учебных пособий и подобных вопросов, но ни один из них не работает. Я ценю любую помощь, которую вы можете оказать.
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var txtBillAmount: UITextField!
@IBOutlet weak var lblTipPercentage: UILabel!
@IBOutlet weak var sldTipPercentage: UISlider!
@IBOutlet weak var lblTipAmount: UILabel!
@IBOutlet weak var lblTotalAmount: UILabel!
var tipPercentage = 10
var billAmount = ""
@IBAction func valueChanged(sender: AnyObject) {
let currentValue = Int(sldTipPercentage.value)
lblTipPercentage.text = "\(currentValue)%"
tipPercentage = currentValue
}
@IBAction func btnCalculate(sender: AnyObject) {
lblTipAmount.text = "\(billAmount)"
}
@IBAction func txtBillAmountValueChanged(sender: AnyObject) {
}
override func viewDidLoad() {
super.viewDidLoad()
//txtBillAmount.delegate = self
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func btnReset(sender: UIButton) {
sldTipPercentage.value = 10
lblTipPercentage.text = "10%"
txtBillAmount.text = ""
lblTipAmount.text = "--"
lblTotalAmount.text = "--"
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Это скриншот того, как выглядит пользовательский интерфейс
Ошибка, которую я получаю