0

我正在尝试制作一个表格视图,其中单元格被分成几个部分,其中包含 uitableview 分组。我环顾四周,发现如何将它分成几个部分,尽管我坚持让它们出现在它们应该的组中,而不是三个组,每个组中都有所有单元格,这就是我目前所拥有的,这就是我所拥有的在做了一些研究后得到了这么远:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell *cell = nil;
    if ([indexPath section] == 0) {
        if (indexPath.row == 0) {
            cell = cell1;
        } else if (indexPath.row == 1) {
            cell = cell2;
        } else if (indexPath.row == 2) {
            cell = cell3;
        }   
    }
    if ([indexPath section] == 1) {
        if (indexPath.row == 0) {
            cell = cell4;
        } else if (indexPath.row == 1) {
            cell = cell5;
        } else if (indexPath.row == 2) {
            cell = cell6;
        }
    }
    if ([indexPath section] == 2) {
        if (indexPath.row == 0) {
            cell = cell7;
        }
    }
    return cell;
}

虽然当我运行并转到此视图时,应用程序崩溃并且在 nslog 框中出现此错误:

*** Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:], /SourceCache/UIKit_Sim/UIKit-2380.17/UITableView.m:5471

提前致谢

4

1 回答 1

1

每个新部分的行索引从零开始。

例如:

if ([indexPath section] == 2) {
    if (indexPath.row == 3) {

应该:

if ([indexPath section] == 2) {
    if (indexPath.row == 0) {

此外,节索引也从零开始,因此您可能希望减少 if 语句中的每个索引。

于 2013-08-17T12:33:40.050 回答