Представление таблицы iOS с проблемой прокрутки текстовых полей - PullRequest
0 голосов
/ 02 ноября 2011

У меня есть UITableView, который состоит из пользовательских ячеек. Есть 21 ячейка, содержащая текстовые поля.

Когда я пытаюсь прокрутить и отредактировать ячейки в нижней части UITableView, мне не удается правильно расположить свои ячейки над клавиатурой.

Также я создал собственный класс ячеек отдельно для своих ячеек. Таким образом, делегаты клавиатуры доступны только для этого класса.

Я видел много ответов, говорящих об изменении размеров вида и т. Д., Но ни один из них до сих пор не работал должным образом.

Может ли кто-нибудь уточнить «правильный» способ сделать это на конкретном примере кода?

1 Ответ

0 голосов
/ 02 ноября 2011

Существует три подхода к этой проблеме, каждый из которых при связывании с клавиатурой делал / будет показывать уведомление ....

  1. Когда появляется клавиатура, вы перемещаете целое просмотр (включая просмотр таблицы) вверх, чтобы убедиться, что выбранное текстовое поле отображается на экране, вы можете рассчитать это, получив высоту клавиатуры (из уведомления) и положение текстового поля.

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

  3. Вы можете установить вкладку содержимого для табличного представления (для нижнего значения) на высоту клавиатуры.

Если вам нужно, при изменении размера или изменении положения табличного представления вам может потребоватьсяустановите его так, чтобы прокрутить содержимое до прямоугольника текстового поля, чтобы убедиться, что оно отображается ...

- (void)scrollToRowAtIndexPath:(NSIndexPath *)indexPath atScrollPosition:(UITableViewScrollPosition)scrollPosition animated:(BOOL)animated;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...