我刚刚继承了代码,它使用委托heightForRowAtIndexPath
方法隐藏/显示行UITableView,并为“隐藏行”返回高度0。
代码有效,但令我担心的是,可能会出现无法预料的并发症。有人可以放松我的担忧或给我很好的理由,为什么这可能会导致问题(我在初始测试中找不到任何问题)。
该表相当小且总共10行,即使没有这种隐藏的行解决方案,也需要自定义行高。
答案 0 :(得分:0)
在两个beginUpdates
和endUpdates
来电之间添加和删除行会更干净,但我不明白为什么这个0高度方法不起作用。
如果没有UI工件,那就是(例如删除按钮显示溢出到下一个单元格。)
答案 1 :(得分:0)
我在我刚刚编写的代码中做同样的事情。我对不同的表格视图设置的不同行为不满意 在我的情况下,替代方案更复杂(一种适应可见或不可见的模型) 现在,我对其进行了一次评论,并记录了一些特点 这是我发现的(iOS 5.0测试):
如果您的代码以不同的方式工作,那么了解它的设置方式会很有趣。
答案 2 :(得分:0)
我使用这种将隐藏单元格高度设置为0的方法。它运行良好,也意味着我可以通过扩展单元格高度来动画包含新单元格(例如像日历应用程序一样添加DatePicker单元格)。
在iOS 7.1中我必须注意的一些事情是,即使单元格高度= 0,仍然会出现非常压扁的文本,因此在这种情况下我需要删除单元格文本。此外,我已经更改了单元格的separatorInset的大小,因为它也出现了。