В -[UITextViewDelegate textView:shouldChangeTextInRange:replacementText:]
вам нужно будет следить за количеством отображаемого текста и вычислять, прокручивается ли экран.Затем отрегулируйте setContentOffset:animated:
прокрутки соответственно.
Однако лучший вариант - вообще не пытаться редактировать в представлении прокрутки.Вместо этого используйте отдельный подробный вид для редактирования текста и просто используйте более сложный вид прокрутки для отображения текста.Другими словами, представьте представление прокрутки как таблицу и представление текста как строку в таблице.Вы выбираете текстовое представление, и оно открывает детальное представление, как в таблице.
Помните, что ваши пользователи ожидают иерархию на iPhone.Перемещение на другой экран для ввода текста - очень распространенное поведение пользовательского интерфейса, которое не дезориентирует их.Они оценят большую простоту использования представления, которое ничего не делает, кроме ввода текста.
См. Этот вопрос на боковой панели: Автоматическая прокрутка iPhone UITextView, но также возможна ручная прокрутка