Objective c 在表视图中插入带有自定义单元格的行

Objective c 在表视图中插入带有自定义单元格的行,objective-c,uitableview,Objective C,Uitableview,在我的表格视图中表格中始终存在五行,,,当我点击其中一行时,新的三行将显示在点击的一行下 如果前五行是默认的UITableViewCell,,,我希望这三个单元格也来自另一个自定义单元格;因此,主五个单元格将不同于次行(主单元格下三个) 以下是如何添加辅助行: 在tableViewdelegatedidSelectRowAtIndexPath: NSInteger count = indexPath.row + 1; NSMutableArray *newRows = [NSMutableArr

在我的
表格视图中
表格中始终存在五行,,,当我点击其中一行时,新的三行将显示在点击的一行下

如果前五行是默认的
UITableViewCell
,,,我希望这三个单元格也来自另一个自定义单元格;因此,主五个单元格将不同于次行(主单元格下三个)

以下是如何添加辅助行:

tableView
delegate
didSelectRowAtIndexPath

NSInteger count = indexPath.row + 1;
NSMutableArray *newRows = [NSMutableArray array];//

   self.expandedIndex = indexPath.row + 1;
   self.tableExpanded = YES;

   for(int i = 0; i < [self.numbers count]; i++)
   {
        NSIndexPath *path = [NSIndexPath indexPathForRow:count inSection:0];
        [newRows addObject:path];
        [self.myArray insertObject:[self.numbers objectAtIndex:i] atIndex:count];
        count++;
   }

     [tableView insertRowsAtIndexPaths:newRows withRowAnimation:UITableViewRowAnimationTop];
NSInteger count=indexPath.row+1;
NSMutableArray*新行=[NSMutableArray]//
self.expandedIndex=indexPath.row+1;
self.tableExpanded=是;
对于(int i=0;i<[self.number count];i++)
{
nsindepath*path=[nsindepath indexPathForRow:count-instation:0];
[newRows addObject:path];
[self.myArray insertObject:[self.numbers objectAtIndex:i]atIndex:count];
计数++;
}
[tableView InsertRowsAndExpaths:newRows with RowAnimation:UITableViewRowAnimationTop];

添加的行,但我希望它们来自我要创建的自定义单元格,,,任何想法,这就是我要做的。我会将
newRows
作为一个属性,然后在
didSelectRowAt…
的末尾调用table refresh。然后在my
cellForRowAtIndexPath
中检查特定的indexPath是否在
newRows
中,如果是,请使用不同的单元格样式:

- (UITableViewCell *)tableView:(UITableView *)tableView 
         cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    UITableViewCell *cell;

    if ([self.newRows contains:indexPath]) {
        // create custom cell
    } else {
        // create normal cell
    }

    return cell;
}
如果这不合理,让我知道,我可以详细说明

另外请注意,您将有一些有趣的边缘情况需要处理。例如,如果用户单击第3个单元格,新单元格插入第4-6行,然后单击第2个单元格,在第3-5行中添加新单元格,则之前的4-6单元格现在将位于第7-9行。我不确定你是如何构建你的应用程序的,所以这可能不是一个问题(比如可能在五个单元格中的一个单元格上一次添加子单元格),但要意识到这是一种可能性