iPhone: прокрутка UIScrollview при вводе текста во встроенный UITextView - PullRequest
1 голос
/ 08 апреля 2010

У меня есть представление, состоящее из UIScrollView, которое содержит UITextField, UILabel и UITextView. Я хочу настроить представление таким образом, чтобы, когда пользователь вводит текст в текстовое представление, прокручиваемый вид прокручивался, чтобы набираемая строка была видимой.

1 Ответ

0 голосов
/ 08 апреля 2010

В -[UITextViewDelegate textView:shouldChangeTextInRange:replacementText:] вам нужно будет следить за количеством отображаемого текста и вычислять, прокручивается ли экран.Затем отрегулируйте setContentOffset:animated: прокрутки соответственно.

Однако лучший вариант - вообще не пытаться редактировать в представлении прокрутки.Вместо этого используйте отдельный подробный вид для редактирования текста и просто используйте более сложный вид прокрутки для отображения текста.Другими словами, представьте представление прокрутки как таблицу и представление текста как строку в таблице.Вы выбираете текстовое представление, и оно открывает детальное представление, как в таблице.

Помните, что ваши пользователи ожидают иерархию на iPhone.Перемещение на другой экран для ввода текста - очень распространенное поведение пользовательского интерфейса, которое не дезориентирует их.Они оценят большую простоту использования представления, которое ничего не делает, кроме ввода текста.

См. Этот вопрос на боковой панели: Автоматическая прокрутка iPhone UITextView, но также возможна ручная прокрутка

...