gpt4 book ai didi

iOS:UICollectionView 内容重置和 dequeueReusableCell

转载 作者:行者123 更新时间:2023-11-29 05:13:34 26 4
gpt4 key购买 nike

好的,情况如下:

我有一个 Collection View ,在 cellForRow 中,我使用 dequeueReusableCell 来重用单元格。在每个单元格上,我都有一个自定义 UIView 对象,该对象作为 subview 添加。

现在,在某种情况下我必须完全重新布局 Collection View 。当这种情况发生时

  • 清除数据模型中的所有项目
  • 为所有可见单元格的索引路径调用deleteItems
  • 调用reloadData

此时 Collection View 为空,并且没有显示任何单元格。

现在,如果我用数据再次更新模型并重新加载 Collection View - 在 cellForRow dequeueReusableCell 中返回重用的单元格/如上所述添加的 UIView 就在那里!/-即使 Collection View 在当前更新之前为空,它也不会初始化新的单元对象。我不确定这是否是预期的行为,或者我的代码中存在其他问题,但是我的问题是 - 如何达到我 重置 Collection View 上的所有内容和 dequeueReusableCell 返回一个新初始化的单元对象。

最佳答案

我是通过惨痛的教训才学到这一点的! Petar 知道这一点,在任何 Collection View / TableView 中,只要约束或其布局结构中的任何 UI 元素发生任何变化,您就应该始终创建另一个原型(prototype)单元,从而节省一些时间。这是唯一正确的方法,因此不要认为您会花费更多时间来制作另一个单元。

当我读到你的评论时,你说你将根据你想要重置所有内容的一个条件启动另一个 View 。只需使用另一个具有另一个 View 的单元原型(prototype),然后立即将其出列。

希望能解决您的问题

关于iOS:UICollectionView 内容重置和 dequeueReusableCell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59430436/

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