Программный UITextField не отображается в viewDidLoad - PullRequest
0 голосов
/ 05 декабря 2018

Я пытаюсь создать UITextField программно, однако он не отображается в представлении.

Я считаю, что я правильно установил ограничения, и все они должны быть активированы на viewDidLoad.Я уверен, что упустил что-то очевидное, однако, по жизни я не могу понять, что.

class HomeController: UIViewController {

    let textField: UITextField = {
        let input = UITextField()
        input.translatesAutoresizingMaskIntoConstraints = false
        return input
    }()

    override func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = .purple

        view.addSubview(textField)
        NSLayoutConstraint.activate([
            textField.centerXAnchor.constraint(equalTo: view.centerXAnchor),
            textField.centerYAnchor.constraint(equalTo: view.centerYAnchor),
            textField.widthAnchor.constraint(equalToConstant: 300),
            textField.heightAnchor.constraint(equalToConstant: 40)
        ])

    }
}

1 Ответ

0 голосов
/ 05 декабря 2018

Установите свойство фона, и оно будет отображаться.

let textField: UITextField = {
    let input = UITextField()
    input.backgroundColor = UIColor.white
    input.translatesAutoresizingMaskIntoConstraints = false
    return input
}()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...