В настоящее время у меня есть UITableView с пользовательскими ячейками, и в каждой ячейке есть UITextField, проблема в том, что иногда UITextField покрывается UIKeyboard.Прокрутить пользовательский UITableViewCell прямо над клавиатурой?
Так что прямо сейчас у меня есть координата Y для UIKeyboard, и мой UITableView корректно работает с ячейками.
Как я могу использовать эту координату Y (float), чтобы прокрутить мой UITableView до этой координаты Y и высоту ячейки, чтобы получить ее прямо над моей UIKeyboard?
Также, когда я скрываю клавиатуру, как бы сбросить UITableView в нормальное положение, в котором он находился?
Любой совет будет оценен!
Спасибо!
CustomCell *cell = (CustomCell*)[[thetextField superview] superview];
CGRect cellRect = [cell convertRect:cell.frame toView:self.view];
float bottomCell = cellRect.origin.y - cellRect.size.height;
if (bottomCell >= keyboardY) {
NSIndexPath *indexPath = [thetableView indexPathForCell:cell];
[thetableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];
}
Метод 'scrollToRowAtIndexPath' знает видимую часть вашего tableView, поэтому вам не нужен оператор if. – inorganik