1

我的应用程序因出现在该线程标题中的消息而崩溃。UITableView.m 中的断言失败。此外,在 Xcode 的调试窗口中还有以下消息。

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“尝试插入第 2 节,但更新后只有 2 个节”

这很奇怪,因为更新前后的节数好像是3。我这里控制节数:

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

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


        }

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

4

2 回答 2

0

您正在尝试插入一个额外的(第三个)部分,但您的代码仅反映了具有 1 或 2 个部分的可能更改。

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

于 2013-04-26T11:14:48.137 回答
0

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

于 2013-04-26T11:12:43.497 回答