键盘阻塞UITableViewCell的UITextField?

目前我在每个UITableViewCell中都有一个UITextField,但问题是,如果有2个或更多的单元格可能会被切断。

有没有简单的方法可以让我的键盘打开时单元格可见?

谢谢!

如果我正确理解你的问题,你希望视图在键盘出现时滚动。 如果你使viewController成为UITableViewController的一个子类,我相信你可以免费滚动。 唯一的其他select不幸并不那么简单。 你需要使用代理方法来上下移动你的视图(如果你想让它和键盘一起滑动,就可以animation)。 有很多答案可以find,所以我不会详细介绍,这里有几个链接可以帮助你!

这里深入解释

这里很好的解释

一些UIScrollView细节在这里

更多在这里

这对我来说工作得很好,以防有人仍然需要答案:

- (void)textFieldDidBeginEditing:(UITextField *)textField { if (self.tableView.contentOffset.y == 0) { [UIView animateWithDuration:0.0 delay:0.5 options:UIViewAnimationOptionAllowUserInteraction animations:^{ } completion:^(BOOL finished) { UITableViewCell *cell = (UITableViewCell*) [[textField superview] superview]; [self.tableView scrollToRowAtIndexPath:[self.tableView indexPathForCell:cell] atScrollPosition:UITableViewScrollPositionTop animated:YES]; }]; } } 

问题在于键盘滑到了单元格时没有考虑到,所以我只是在一个小的延迟模块中添加了这个调用。