使用setContentOffset无法正常工作滚动UITableView到特定位置 - ObjC
问题描述:
我在SO中看到很多答案,它描述了如何将UITableView滚动到特定位置。使用setContentOffset无法正常工作滚动UITableView到特定位置 - ObjC
我用setContentOffset
滚动到特定的位置。
我遇到了一个奇怪的问题。如果我的tableView
已滚动一半,则setContentOffset
工作正常。但是当我滚动到tableView
的结尾,然后使用setContentOffset
时,表格视图滚动一点点。
我的setContentOffset
值是CGPoint(0,199)
。
[self.tableView setContentOffset:CGPointMake(0,199) animated:NO];
达到底部后,我使用setContentOffset
。然后我检查了UITableView
的contentOffset
。它是169
。
我无法弄清楚究竟是什么问题。
编辑::
我正在使用下面的代码。当最后一个单元格按下按钮:
- (void)userPressedSubmitButtonOnLastCell
{
[self updateData];
[self.tableView reloadData];
[self performSelector:@selector(scrollTableView) withObject:nil afterDelay:0.5];
}
- (void)scrollTableView
{
[self.tableView setContentOffset:CGPointMake(0,199) animated:NO];
}
答
你为什么不使用tableView scrollToRowAtIndexPath:
或tableView scrollRectToVisible:(CGRect)
?这将允许您滚动到特定的行或矩形。 ContentOffset
更适合UIScrollView
。
确保您的约束条件合适 – Jack
是的我的约束是正确的@Janesh – Dalvik
使用scrollView委托代码更新您的问题 – karthikeyan