如何在一个表视图中使用不同的单元格?

时间:2011-08-18 12:07:47

标签: iphone uitableview cell

如何在一个uitableview上使用3个不同的单元格?我现在有3个按钮当我按任何按钮时,应该更改表格视图的单元格。请帮忙

1 个答案:

答案 0 :(得分:0)

在按钮的操作方法中,保存点按了哪个按钮&重新加载要更改单元格的行。

-(void)button1Tapped:(id)sender
{

    self.buttonIndex = 1;
    NSArray* arr = [[NSArray alloc] initWithObjects:self.indexPathOfConcernedCell, nil];
    [self.tableView reloadRowsAtIndexPaths:arr withRowAnimation:UITableViewRowAnimationNone];
    [arr release];

}

然后,在cellForRowAtIndexPath:中,按一个单元格返回一个按钮的基础 -

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

    if(indexPath == self.indexPathOfConcernedCell)
    {

    if(self.buttonIndex == 1)
             {
                  Cell1* cell = (Cell1*) [tableView dequeueReusableCellWithIdentifier:@"CellIdentifier1"];

                  if(cell == nil)
                  {
                 cell = [[[Cell1 alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"CellIdentifier1"] autorelease];
                  } 
             }

        else if(self.buttonIndex == 2)
        {
            //do similar stuff
        }

        //do similar stuff for buttonIndex 3 here

        }
    }

    else
    {
        //your regular stuff
    }

    return cell;

    }