多表视图部分:第一部分带有静态单元格,第二部分带有动态单元格数量

时间:2014-06-18 15:36:07

标签: uitableview ios7

正如标题所说,我想创建一个包含两个部分的表格视图。第一秒只包含一个带文本框的单元格。第二部分应该用数组的内容动态填充。

我写了这段代码:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (indexPath.section == 1)
    {
        static NSString *simpleTableIdentifier = @"Cell";

        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];

        if (cell == nil)
        {
            cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
        }

        Player *player = [self.playerController getPlayerAtPositon:indexPath.row];

        cell.textLabel.text = [NSString stringWithFormat:@"%@", player.persistentData.name];

        return cell;
    }
    else
    {
       // ???
    }
}

但是我需要写入else代码块?我填充文本框的单元格不会被覆盖吗?

我发现,你不能只是动态添加元素。例如,当您想要添加三个播放器时,还必须将r​​ows-value设置为三。否则应用程序将崩溃。有没有办法动态地做到这一点?

enter image description here

1 个答案:

答案 0 :(得分:1)

您有两种类型的单元格,其中一种具有文本字段,另一种具有播放器信息。因此,您应为每种类型的单元格创建不同的单元格标识符。

    static NSString *CellIdentifier1 = @"Cell1";
    static NSString *CellIdentifier2 = @"Cell2";

    if(indexpath.section == 0) {
         // create and return a cell with CellIdentifier1 
    }
    else {
         // create and return a cell with CellIdentifier2  
    }

还有一件事,虽然配置UITableViewcell不要忘记在最后添加自动释放... 希望这会对你有帮助....