我创建了一个包含UITextField类型的自定义单元格的表。表有超过一百个单元格。当我点击例如50.具有大约1400 Y表偏移的单元格时,键盘显示在上面。 我在2300 Y表偏移处向下滚动表格,以便现在隐藏单元格。然后我开始在这个单元格上再次打字。使用下面的代码,我在屏幕视图区域滚动单元格。
[TableView scrollToRowAtIndexPath:[TableView indexPathForCell:cell ] atScrollPosition:UITableViewScrollPositionTop animated:NO];
只有在我的情况下向下滚动小于460 Y的表偏移小于1860 Y偏移时,这才能正常工作。因此,如果我超过1860 Y表偏移量,我必须在隐藏单元格下面键入两个字符,然后才能将表格滚动正确。
我还测试了其他下面的表格滚动方法,我有同样的问题:
方法1:
// offset = offset of clicked cell
[TableView setContentOffset:CGPointMake(0, offset.y) animated:YES]
方法2:
CGRect frame = TableView.frame;
frame.origin = CGPointMake(0, offset.y );
TableView = frame;