Почему этот код в ViewDidLoad не выполняется? - PullRequest
0 голосов
/ 09 апреля 2019

У меня есть два текстовых поля, одна кнопка и четыре метки.

Когда вы нажимаете кнопку, она должна обновить четыре метки.
Метка 1: имя
Метка 2: электронная почта
Метка 3: имя (те же данные, что и метка 1)
Метка 4: электронная почта (те же данные, что и метка 2)

Я экспериментировал под viewDidLoad(), чтобы посмотреть, смогу ли я сделать еще одну переменную и обновить свой последний ярлык. Нет ошибки при запуске кода, но в симуляторе получается «пустой».

Кто-нибудь может объяснить, почему?

import UIKit

class ViewController: UIViewController {


    @IBOutlet weak var emailInput: UITextField!
    @IBOutlet weak var nameInput: UITextField!
    @IBOutlet weak var label: UILabel!
    @IBOutlet weak var label2: UILabel!
    @IBOutlet weak var label3: UILabel!
    @IBOutlet weak var label4: UILabel!


    @IBAction func actionButton(_ sender: Any) {
        var text = nameInput.text
        var email = emailInput.text


        label.text = text
        label2.text = email

        label3.text = text
    }

//where i experimented:

    override func viewDidLoad() {
        super.viewDidLoad()
        var email2 = emailInput.text
        label4.text = email2



}


}

Ответы [ 2 ]

0 голосов
/ 09 апреля 2019

Метод viewDidLoad, вызываемый в начале отлично.Но метка не показывает никаких данных, потому что изначально текстовое поле не имеет значения.Это ярлык не содержит никаких данных.

Пожалуйста, установите любое значение для метки изначально.Как и

label4.text = "Something"

Надеюсь, вы понимаете, что viewDidLoad называется идеально.

0 голосов
/ 09 апреля 2019

Изменить

label4.text = email2

На

label4.text = "howdy"

Теперь вы увидите что-то в своем интерфейсе.

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