我从我对瀑布布局的研究中收集到的是,我们需要提前知道高度来做 prepareLayout。但是如果我们等到获取远程图像,然后找到它们的大小并进行 prepareLayout,那么就会有很多延迟。但我看到很多应用程序使用这种布局和远程图像,如 Pinterest、Microsoft Delve 等。我在 swift 中看到了很多瀑布布局示例。但是他们使用 Assets 中的图像。
有谁知道如何解决这个问题?提前致谢。
最佳答案
可以从图片中抓取尺寸,如果没有图片,可以设置图片。
从后端获取图像后,您可以调用 reloadData 或 reloadItemAtIndexPath,在这两种情况下都会为单元格调用布局方法。
您也可以尝试覆盖 layoutSubviews 方法和 Flowlayout 方法。
关于ios - 如何在 swift 中实现 UICollectionView 的瀑布布局,根据获取的远程图像改变它们的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34868630/