gpt4 book ai didi

ios - 隐藏 UITableview 单元格

转载 作者:技术小花猫 更新时间:2023-10-29 11:09:21 24 4
gpt4 key购买 nike

我正在尝试从 UITableView 中隐藏一个单元格。就像删除操作一样,但我只是想隐藏它以便稍后在相同位置显示它。

我知道 UITableViewCell 有一个名为“Hidden”的属性,但是当我使用这个属性隐藏 Cell 时,它会隐藏但没有动画,并且会留下一个空白区域

例子:

  1. 第一个单元格
  2. 第二个单元格
  3. 第三格

有可能当我隐藏第二个单元格时,第三个单元格将位置更改为 2 吗?

谢谢

最佳答案

一种有效地“隐藏”带动画的行而不实际删除它的方法是将它的高度设置为零。您可以通过覆盖 -tableView:heightForRowAtIndexPath: 来做到这一点。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
CGFloat height = 0.0;
if (isRowHidden) {
height = 0.0;
} else {
height = 44.0;
}
return height;
}

(当然,您只想为要隐藏的特定行返回 0.0,而不是无条件地返回)。

简单地更改此方法的返回值不会使 TableView 自动调整行的高度,要做到这一点,您需要进行以下调用。

isRowHidden = YES;
[tableView beginUpdates];
[tableView endUpdates];

如果这样做,您会看到两者之间的动画出现/消失过渡。

关于ios - 隐藏 UITableview 单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29886642/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com