Я создал пользовательское представление ввода для ввода текста в UITextField
. По сути, это просто настраиваемая цифровая клавиатура. У меня есть текстовые поля, на которых я установил свойство inputView для использования моего настраиваемого подкласса UIView
. В этом представлении у меня есть набор кнопок - от 0-9, а также обратно.
Теперь я хочу программно изменить текст UITextField при нажатии этих кнопок. UITextField
принимает UITextInput
протокол, в котором он принимает UIKeyInput
. В этом протоколе у меня есть все необходимые мне методы, т.е. Вставка текста в позицию курсора и удаление текста.
Проблема заключается в том, что эти методы не запускают методы делегата UITextField
. То есть, если у меня есть выборочная проверка в поле textField:shouldChangeCharactersInRange:replacementString:
, например, это не сработает. Я попытался установить свойство text UITextField
напрямую, но это тоже не сработало.
Каков правильный способ вставки текста в UITextField
, я имею в виду текст вставки таким образом, что будут вызваны все методы делегата?