断言失败 - [UITableView _endCellAnimationsWithContext:],UIKit // UITableView.m

时间:2013-04-26 11:08:29

标签: iphone ios uitableview crash

我的应用程序崩溃,显示在此主题标题中的消息。 UITableView.m中的断言失败。此外,Xcode的调试窗口中还有以下消息。

  

由于未捕获的异常而终止应用   'NSInternalInconsistencyException',原因:'尝试插入节   2但更新'

后只有2个部分

这很奇怪,因为更新之前和之后的部分数量似乎是3.我在这里控制部分的数量:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView  
{
    if (editMode)
    {
        if ( [device typeA]) {

            if ( [device typeB])
                return 1;
            else
                return 2;


        }

提示:我想“隐藏”最后一节

2 个答案:

答案 0 :(得分:0)

如果您在添加一个部分后返回2作为部分数量,当然iOS认为存在问题。您应该以不同的方式隐藏某个部分,例如通过将其标题高度设置为0。

答案 1 :(得分:0)

您正在尝试插入其他(第三个)部分,但您的代码仅反映了包含1个或2个部分的可能更改。

您应该尝试从dataSource中读取它们,而不是硬编码部分的数量,以确保数字始终保持一致。