点击UILabel
后,我尝试在UICollectionViewCell
加载后UICollectionViewCell
更改button
的文字。但标签不会在屏幕上更新。控制台显示标签的text属性已更新,但似乎标签未使用新文本重新绘制。
这是UICollectionViewCells
的已知问题吗?也许某种缓存问题?我是否需要reload
单元格或整个集合视图才能显示更新?
答案 0 :(得分:1)
我有类似的情况,其中collectionView单元格中的UILabel正在更新。然后在对故事板进行一些修改后,UILabel在以编程方式更新值时不会更改。如初始问题中所述,即使调试终端显示正在更新连接的UILabel属性文本,该值仍保持默认值。
以下是我解决问题的方法。在故事板中,
不知何故,一切都恢复正常。
作为旁注:Radwa的答案的快速3.1版本是:
collectionView.reloadItems(at: [indexPath]) // single cell in the collection view
collectionView.reloadData() // entire collection view
答案 1 :(得分:0)
因为单元格已经加载,所以在重新加载单元格之前不会发生任何更改,因此您可以重新加载整个集合视图
[self.collectionView reloadData];
或者仅受影响数据更改的一个/多个单元格
[self.collectionView reloadItemsAtIndexPaths: indexpathArray];
但请确保在重新加载单元格之前正确更改数据