Я программирую приложение калькулятора как проект упражнения. Ранее я уже использовал текст метки через
calculatorLabel.text
Несмотря на то, что я использую точно такое же выражение в другой функции, я всегда получаю 0 вместо фактического текста внутри него. Я серьезно не понимаю, почему это происходит. Я уже пробовал использовать режим отладки и прочее, но это не работает.
здесь две функции (сокращенно):
@IBAction func operationButtonTapped(_ sender: UIButton) {
let operation = sender.currentTitle!
lastSender.backgroundColor = UIColor.systemBlue
lastSender = sender
sender.backgroundColor = UIColor.orange
//a switch would be here(deleted)
isTyping = false
let currentNumber = Double(calculatorLabel.text!)!
a = currentNumber
}
@IBAction func changeStateButtonTapped(_ sender: UIButton) {
let operation = sender.currentTitle!
let displayedNumber = Double(calculatorLabel.text!)!
var displayedText = self.calculatorLabel.text!
if operation == "+/-"{
if operation.prefix(1) == "-" {
displayedText.remove(at: displayedText.startIndex)
}
else{
displayedText = "-" + String(displayedNumber)
}
}
else if operation == "%"{
displayedText = String(displayedNumber/100)
}
calculatorLabel.text = displayedText
}
верхняя получает текст, а нижняя не ... заранее большое спасибо за попытку помочь мне!