在原型单元模式下在UITableView中添加行(这不是我期望的)

时间:2014-05-12 11:35:25

标签: ios objective-c uitableview

我有原型cell的UITableView。我在单元格中有一个带有各种值(文本值)的标签。 添加新行时,使用先前单元格值创建的新行中的某些标签不是默认值:

我该怎么办?

我的问题清楚了吗?

这是我的代码:

- (void)viewDidLoad
{
    [super viewDidLoad];

    gamers = [[NSMutableArray alloc] initWithObjects:@"Player1",@"Player2", nil];
}

- (IBAction)btnAddRow:(id)sender {
    [gamers addObject:@"new player"];
    [_tableView reloadData];
}

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

    static NSString *tableIdentifier = @"gamerCell";
    nTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:tableIdentifier];
    if (cell == nil) {
        cell = [[nTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:tableIdentifier];
    }
    cell.lblTitle.text = [gamers objectAtIndex:indexPath.row];

    return cell;
}

2 个答案:

答案 0 :(得分:1)

请在链接

中找到更新的项目

UITableView-dynamic-row-buttons

希望这有帮助。

答案 1 :(得分:0)

你在哪里更新分数?如果您没有这样做,请根据您的逻辑制作,然后在

中设置此值
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

    static NSString *tableIdentifier = @"gamerCell";
    nTableViewCell *cell = (nTableViewCell *)[tableView dequeueReusableCellWithIdentifier:tableIdentifier];
    if (cell == nil) {
        cell = [[nTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:tableIdentifier];
    }
    cell.lblTitle.text = [gamers objectAtIndex:indexPath.row];
    cell.lblScore.text = [NSString stringWithFormat:@"%i", (int)scoreProperty]; 
    return cell;
}