Xcode 5改变了静态表行为。怎么修?

时间:2013-09-20 17:28:43

标签: ios xcode uitableview ios7 xcode5

这段代码在Xcode 4.6中运行良好,但在Xcode5 / IOS7中不再有效。

根据ID中的ID行在静态表中可见或不可见(以及节标题)。如果以下代码被注释掉,视图控制器将加载,否则它会生成:由于未捕获的异常'NSRangeException'终止应用程序,原因:' * - [__ NSArrayI objectAtIndex:]:索引1超出边界[0 .. 0]'

View controller是一个UITableView,除了numberOfRowsInSection之外,其他所有内容都被注释掉了。

有关如何恢复此功能的任何想法?

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    if(section == 1)
    {
        if(ID == 1) return 0;
        else return 1;
    }
    else return 2;
}

由于

解决!!!将“else return 2”替换为:

else return [super tableView:tableView numberOfRowsInSection:section];

1 个答案:

答案 0 :(得分:0)

您的标准行数是2.您必须假设您的代码中的其他位置,您可以访问第二行(索引为1),即使您为索引为1的部分返回0或1。

这可以解释为什么您的代码会导致此错误,否则就不会。