一千萬個為什麽

搜索

如何在UITableView中為節標題的高度變化設置動畫?

我已經實現了這個方法來返回節標題高度。但是,當該部分的高度發生變化時,它會立即發生而不會產生動畫。

是否有動畫?

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
    if (flatHeader) {
        return 50.0f;
    } else {
        return 100.0f;
    }
}

最佳答案

我不是100%確定這對於表格標題是有效的,但它適用於表格行,因此值得一試。我有一個實例變量 headerHeight 最初設置為44.0並且我將其更改為:

- (void)changeHeight {
    [self.tableView beginUpdates];
    headerHeight = 88.0;
    [self.tableView endUpdates];
}

在我的代碼中,我返回 heightForRowAtIndexPath 中的 headerHeight ,但您可以在 heightForHeaderInSection 中嘗試:

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
    return headerHeight;
}

轉載註明原文: 如何在UITableView中為節標題的高度變化設置動畫?