gpt4 book ai didi

iOS:dequeueReusableCell(withIdentifier:for:) 和 dequeueReusableCell(withIdentifier:) 有什么区别?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:11:21 27 4
gpt4 key购买 nike

根据官方文档,有两种方法可以从tableView的队列中获取可重用的cell。一个是 dequeueReusableCell(withIdentifier:for:),另一个是 dequeueReusableCell(withIdentifier:)。从文档的解释来看,我认为前者是返回可重用单元格并将其添加到tableView的方法。另一方面,后者是只返回可重用单元格的方法。这样对吗?

如果是对的,我还有一个问题。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: UITableViewCell = self.tableView.dequeueReusableCell(with: SomeTableViewCell.self, for: indexPath)
let anotherCell: UITableViewCell = self.tableView.dequeueReusableCell(with: AnotherTableViewCell.self)
return anotherCell
}

在第一行,我们可以获得可重用的单元格并将单元格添加到tableView。在第二个,我们只是获得了另一个可重复使用的电池。最后,该方法返回从第二行获得的单元格。返回的单元格与已经添加到 tableView 的单元格不同。在这种情况下,第一行添加到 tableView 的单元格只是被最后一行返回的单元格替换了吗?谢谢。

最佳答案

方法 dequeueReusableCell(withIdentifier:)dequeueReusableCell(withIdentifier:for:) 老,它们之间的主要区别是 first 将返回 nil,如果 cell don '注册,第二个将抛出异常,应用程序将崩溃。 IndexPath 需要计算高度(如果定义了 tableView:heightForRowAtIndexPath)

关于iOS:dequeueReusableCell(withIdentifier:for:) 和 dequeueReusableCell(withIdentifier:) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44213804/

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