我在我的应用程序中使用以下代码。
NSIndexPath* ipath = [NSIndexPath indexPathForRow:[sectionInfo numberOfObjects]-1 inSection:section];
NSLog(@"ipath %@",ipath);
[self.myTableView scrollToRowAtIndexPath:ipath atScrollPosition: UITableViewScrollPositionTop animated:NO];
并像这样获取日志
ipath {length = 2,path = 1 - 9}
但应用程序崩溃时收到错误,如
由于未捕获的异常终止应用' NSRangeException',原因:' NSMutableRLEArray objectAtIndex:effectiveRange ::越界'
但如果我在评论后运行项目
//[self.myTableView scrollToRowAtIndexPath:ipath atScrollPosition: UITableViewScrollPositionTop animated:NO];
它运行正常。我使用fetchedresultcontroller来填充表视图,而indexpath中的对象不是null。任何帮助都会有意义吗?
答案 0 :(得分:3)
使用此代码可能会对您有所帮助
UITableViewCell *cell = (UITableViewCell *)[yourTableName cellForRowAtIndexPath:indexPath];
[yourTableName setContentOffset:CGPointMake(cell.frame.origin.x, cell.frame.origin.y) animated:NO];