遇到NSInternalInconsistencyException的一些用户崩溃

时间:2017-10-19 16:56:15

标签: ios objective-c arrays uitableview crash

根据崩溃分析,有些用户正在遭遇崩溃。这就是崩溃所说的。

  

致命异常:NSInternalInconsistencyException尝试插入   第0行进入第0部分,但第0部分后只有0行   更新

这是我正在使用的代码。

- (void)insertArray:(NSNotification *)notification {
       [self.tableView beginUpdates];
       [self.arrayList insertObject:person atIndex:0];
       [self.tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForRow:0 inSection:0]] withRowAnimation:UITableViewRowAnimationNone];
       [self.tableView endUpdates];
}

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView
 numberOfRowsInSection:(NSInteger)section {

    return [self.arrayList count];
}

我的表视图数据源和委托已设置,我个人从未遇到过崩溃。任何提示或建议都表示赞赏。

1 个答案:

答案 0 :(得分:0)

此错误表示数据源numberOfRowsInSection返回的行数不会占新行(您仍然报告该表应该有0行甚至之后插入一个)。在执行任何单元格事务之前,应更新您的数据源。

由于您自己没有体验过,因此似乎必须存在某种情况或边缘情况会阻止您的数据源正确更新。编辑问题并显示数据源方法可能会提供一些见解。