ios - Swift - CollectionViewCell 标签在我重新加载后移动位置

标签 ios swift uicollectionviewcell

我有一个 UICollectionView,其中包含一些 UICollectionViewCell。这些单元格中的每一个都有两个标签,左上角的一个是该单元格的日期,另一个是货币金额。我在 Storyboard中通过约束设置了两个标签的位置。

货币标签来自CoreData,在首次打开应用时显示。

我有一个按钮,可以单击该按钮以将新金额添加到所选的任何单元格。该按钮将新数量保存到 CoreData,然后调用 self.collection.reloadItemsAtIndexPaths(self.collection.indexPathsForSelectedItems()!)

当单元格重新加载时,货币标签的位置与其他单元格不同。

调试器让我看到 reloadItemsAtIndexPath 将我带到 cellForItemAtIndexPath 函数并执行 cell.dateAmount.text = "$\(Int(amount ))".

除了标签的位置向上移动了几个像素外,一切都按我的预期进行。关于可能导致这种情况的原因有什么建议吗?

最佳答案

我不确定为什么重新加载单元格会导致约束中断,但我通过将两个标签放在堆栈 View 中找到了解决方案。现在,当我更新标签时,它会保留在原来的位置,只有文本发生变化。

关于ios - Swift - CollectionViewCell 标签在我重新加载后移动位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35077814/

相关文章:

ios - 设置 UIImageView 图片影响布局约束

ios - 如何在 iOS 6.1 中从我们的应用程序打开 native 日历应用程序?

ios - FIRDatabaseReference 返回 nil,但可检索 UserID

ios - 有 list 时是否需要 Apple 元标记?

ios - 无法更新葫芦服务器版本

ios - 如何将数据从父模型类传递到 SwiftUI 中的 subview

ios - 如何隐藏特定文本字段输入的标签?

ios - 触摸单元格时 UICollectionView 崩溃

ios - 无法让 UICollectionView 显示单元格

ios - 如何向 Collection View 单元格的内底边缘添加阴影? swift 3