Я хотел бы установить ограничение для текстового поля. Пример: максимальное количество символов должно быть 6, и символы могут быть только цифрами. Но я не мог поместить эти два элемента управления в одну функцию.
Первая функция для подсчета текста:
func textFieldCharacterCountLimit(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let maxLength = 6
let currentString: NSString = txt_phone_no_verification_code.text! as NSString
let newString: NSString =
currentString.replacingCharacters(in: range, with: string) as NSString
return newString.length <= maxLength
}
Вторая функция для типа текста:
func textFieldCharacterTypeLimit(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let allowedCharacters = CharacterSet.decimalDigits
let characterSet = CharacterSet(charactersIn: string)
return allowedCharacters.isSuperset(of: characterSet)
}
Кроме того, он также выдает ошибку. И функция textFieldCharacterCountLimit не работает. Я думаю, что получаю ошибку, потому что две функции влияют на одно и то же текстовое поле с возвратом. Спасибо