Текстовое представление не перехватывает событие paste:
, потому что это был не фактический ответчик, это не текстовое представление, а частное веб-представление (UIWebDocumentView), которое поддерживает текстовое представление.
Однако при вставке веб-представление вызовет текстовое представление (личное) -[UITextView keyboardInput:shouldInsertText:isMarkedText:]
, и, в свою очередь, делегат текстового представления -textView:shouldChangeTextInRange:replacementText:
.
Поэтому вам просто нужно реализовать -textView:shouldChangeTextInRange:replacementText:
в делегате текстового представления.
(Конечно, нормальный ввод с клавиатуры также вызывает этот метод. Нет идеального способа их различить.)