NSMutableRLEArray objectAtIndex:effectiveRange:: 填充 UITableView 时越界
Posted
技术标签:
【中文标题】NSMutableRLEArray objectAtIndex:effectiveRange:: 填充 UITableView 时越界【英文标题】:NSMutableRLEArray objectAtIndex:effectiveRange:: Out of bounds in populating UITableView 【发布时间】:2014-04-15 05:21:19 【问题描述】:我在我的应用程序中使用以下代码。
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:: Out of bounds”
但如果我在评论后运行项目
//[self.myTableView scrollToRowAtIndexPath:ipath atScrollPosition: UITableViewScrollPositionTop animated:NO];
它工作正常。我正在使用 fetchedresultcontroller 填充表视图,并且 indexpath 处的对象不为空。任何帮助都会很明显吗?
【问题讨论】:
【参考方案1】:使用此代码可能会对您有所帮助
UITableViewCell *cell = (UITableViewCell *)[yourTableName cellForRowAtIndexPath:indexPath];
[yourTableName setContentOffset:CGPointMake(cell.frame.origin.x, cell.frame.origin.y) animated:NO];
【讨论】:
感谢您的回复。它没有崩溃。但它没有滚动到索引路径 它将为当前单元格设置 tableView 的 contentOffset。 我正在使用自定义单元格。当我使用上面的代码时,'cell' 得到空值 然后请检查您的 indexPath。我认为您的 indexPath 不正确。以上是关于NSMutableRLEArray objectAtIndex:effectiveRange:: 填充 UITableView 时越界的主要内容,如果未能解决你的问题,请参考以下文章
ObjectA.Signal.connect(ObjectB.Slot) 不工作。我的理解正确吗?
Flink 使用另一个 ObjectA 流中的 List<ObjectB> 创建新的 ObjectB 流