在运行时从静态UITableView中删除行

时间:2013-11-12 23:05:54

标签: ios uitableview nib

当在笔尖中静态定义所有部分和行时,是否可以在运行时从UITableView删除行?

在下面的故事板场景中,我可以在运行时删除“Addr 2”字段吗?在这种情况下,我没有向UITableView提供数据源。

enter image description here

1 个答案:

答案 0 :(得分:1)

我不知道“删除”,但您可以使用tableView:heightForRowAtIndexPath:隐藏该行。

- (void)methodToToggleAddr2CellVisibility
{
    self.addr2CellIsHidden = !self.addr2CellIsHidden;
    [self.tableView beginUpdates];
    [self.tableView endUpdates];
}

- (float)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
{
    if (indexPath.section == 1 && indexPath.row == 1) { // the cell you want to hide
        if (self.addr2CellIsHidden == YES) {
            return 0;
        } else {
            return 44;
        }
    }
    return 44;
}