使用tableView.beginUpdates()更改UITableViewCell高度

时间:2016-01-08 06:58:01

标签: ios uitableview

所以我想通过这样的方式改变我的UITableViewCell的高度:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    selectedIndexPath = indexPath
    tableView.beginUpdates()
    tableView.endUpdates()
}

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {

    if indexPath == selectedIndexPath {
        return 140
    } else {
        return 90
    }
}

然而,问题在于,当我这样做时,单元格“展开”的速度比展开部分的内容要慢,所以扩展部分中的任何内容都显示在单元格完全展开之前,它有点难看。如果我使用tableView.reloadRowsAtIndexPaths(),可以解决此问题,但我不想重新加载单元格,因为我在单元格的扩展部分显示了一个计时器。

0 个答案:

没有答案