Swift не может получить текст метки, хотя это же выражение - PullRequest
0 голосов
/ 16 марта 2020

Я программирую приложение калькулятора как проект упражнения. Ранее я уже использовал текст метки через

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
}

верхняя получает текст, а нижняя не ... заранее большое спасибо за попытку помочь мне!

1 Ответ

0 голосов
/ 16 марта 2020

Я нашел ответ ...

Кажется, связь между ним и кодом была как-то испорчена. Всем, у кого такая же проблема: щелкните правой кнопкой мыши компонент в раскадровке и проверьте соединения!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...