簡體   English   中英

UITableViewCell重用

[英]UITableViewCell Reuse

我有一個UITableView正在重用單元格。 我表中的某些單元格的高度與其他單元格略有不同。 重用單元格時,表格視圖似乎將單元格添加到以前的高度,然后將其設置為新高度。 我不希望它這樣做!

我嘗試將CATransactions放在我的layoutSubviews和prepareForReuse周圍,它們都進行一些布局並禁用動作,但這不能解決問題。

這些單元格幾乎相同,只是它們在頂部和底部的填充量不同,這取決於它們是在頂部,底部還是中間。

我在這里想念一些妙招嗎?

謝謝你的幫助!!

這並不是一個真正的技巧,但是tableView:heightForRowAtIndexPath:將讓表格視圖知道單元格應該是多少高度。

使用heightForRowAtIndexPath返回每行的高度。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
    return 49;
}

事實證明,這與為行的插入添加動畫效果有關,而不是與單元格的重用有關。 似乎使用UITableViewRowAnimationNone仍可以動畫化單元格的插入。 通過將在CATransaction中插入單元格的調用包裝成禁用狀態,可以解決問題。 :)

對不起,混淆了!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM