我有一个自定义CollectionViewFlowLayout,其中包含通过REST API生成的数千个动态分页数据。

我已经实现了Raywenderlich's Pinterest like layout。如果您已经知道像元高度,那没关系。但是问题是,在我的数据中,图像大小和文本大小是完全动态的。

我正在尝试通过委托方法计算像元高度,但它没有按预期工作。

另外,为新ui CollectionView单元格重新计算单元格属性的最佳性能方法是什么?

ios - UICollectionview具有动态数据的自定义布局-LMLPHP

最佳答案

您需要转到您的单元格子类并覆盖preferredLayoutAttributesFitting(_:),如下所示:

override func preferredLayoutAttributesFitting(_ layoutAttributes: UICollectionViewLayoutAttributes) -> UICollectionViewLayoutAttributes {

                // Ensures that cell expands horizontally while adjusting itself vertically.
                let preferredSize = systemLayoutSizeFitting(layoutAttributes.size, withHorizontalFittingPriority: .required, verticalFittingPriority: .fittingSizeLevel)

                layoutAttributes.size = preferredSize
                return layoutAttributes
    }

10-08 07:28
查看更多