将新单元格插入排序的 UITableView 的有效方法?
Posted
技术标签:
【中文标题】将新单元格插入排序的 UITableView 的有效方法?【英文标题】:Efficient ways of inserting a new cell into a sorted UITableView? 【发布时间】:2009-06-04 15:03:33 【问题描述】:我正在尝试将一个新单元格插入到对数据进行排序的表格视图中。有没有一种简单有效的方法可以使用 API 做到这一点?
最简单的方法似乎是将新数据插入 NSMutableArray,使用排序描述符排序,然后调用 reloadData。这应该只重新显示可见的行,所以它看起来不会太糟糕。
是否值得对数据数组进行二进制搜索,插入数据然后插入单元格?
【问题讨论】:
【参考方案1】:这实际上取决于您的表中有多少行。如果您的表只有大约 10 行,只需将数据添加到您的 NSMutableArray
、重新加载并重新加载 UITableView
就可以了。
另一方面,如果您的表有成百上千行,那么您肯定会想要做一些更有效率的事情。使用二进制搜索将您的数据插入到您的NSMutableArray
是一个好主意。然后您所要做的就是调用UITableView
的insertRowsAtIndexPaths:withRowAnimation:
将行添加到实际的表视图中。无需重新加载。
【讨论】:
以上是关于将新单元格插入排序的 UITableView 的有效方法?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 diffable UITableView 更新表格单元格