Я ищу способ минимизировать символы в текстовом поле. Поскольку текстовое поле предназначено для ввода имени пользователя, я хочу, чтобы пользователи вводили 4 символа минимум до 30 символов. Во-первых, я создал текстовое поле shouldChangeCharactersIn
для установки максимальных символов в текстовом поле. Код выглядит хорошо, но проблема, когда я хочу сделать пользователей, если текстовое поле имени пользователя меньше 4 символов, приложение дает им ошибку или возвращает false.Как установить минимальные символы текстового поля в swift 3
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let currentString = usernameTextField.text!.characters.count ?? 0
if (range.length + range.location > currentString) {
return false
}
let newLength = currentString + string.characters.count - range.length
return newLength <= 30
}
Любая помощь?
Проблема в том, что любые пользователи вводят имя пользователяTextField меньше 4 и более 30 символов, это дает ему ложь. Я сделал последнюю часть (более 30 символов), но я не мог найти решение для менее 4 символов. – user2508528
Это не правильный подход. Этот код по-прежнему позволяет отклонять клавиатуру, даже если текстовое поле слишком короткое или слишком длинное. – rmaddy