У меня есть пользовательский класс UITextField
, где я хочу перезаписать
override func shouldChangeText(in range: UITextRange, replacementText text: String) -> Bool
но я не могу получить новую измененную строку
override func shouldChangeText(in range: UITextRange, replacementText text: String) -> Bool {
if (self.changeHandler != nil) {
let location = offset(from: beginningOfDocument, to: range.start)
let length = offset(from: range.start, to: range.end)
let r = Range(NSRange(location: location, length: length))
let newText = self.text!.replacingCharacters(in: r!, with: text)
return self.changeHandler!(newText)
}
return super.shouldChangeText(in: range, replacementText: text)
}
я получаю
Неоднозначная ссылка на элемент 'text'