SnapKit - Невозможно добавить ограничения, просматривая UIViews - PullRequest
0 голосов
/ 24 апреля 2018

У меня есть несколько TextFields, к которым я хотел бы применить аналогичные ограничения макета.Вместо того, чтобы повторять такие ограничения, я создал массив кортежей типа (UITextField, UIView), где UITextField - это текстовое поле, к которому я хочу добавить ограничения, а представление - это представление, содержащее такое текстовое поле.

Мой код выглядит следующим образом:

    let textFields: [(UITextField, UIView)] = ...

    for textFieldTuple in textFields {
        let textField = textFieldTuple.0!
        let view = textFieldTuple.1!

        textField.snp.makeConstraints { (make) -> Void in
            make.top.equalTo(view.snp.top)
            make.bottom.equalTo(view.snp.bottom)
            make.left.equalTo(view.snp.left)
            make.right.equalTo(view.snp.right)
        }
    }

Однако, когда я запускаю свое приложение, приложение вылетает из-за первого ограничения в закрытии.Могу ли я сделать ограничения из такой позиции, или я должен явно написать их для каждого TextField?Спасибо

Подробности аварии:

libc++abi.dylib: terminating with uncaught exception of type NSException

1 Ответ

0 голосов
/ 24 апреля 2018

Прежде чем устанавливать ограничения между двумя элементами, между ними должна быть зависимость макета, поэтому добавьте каждое текстовое поле в соответствующее представление перед установкой ограничений

...