在阅读objc.io关于UICollectionView + UIKit Dynamics的第五期时,第二部分讨论了“为绩效铺平性能的行为(related source code)”,这一直困扰着我,但一直在调用prepareLayout
方法,但-shouldInvalidateLayoutForBoundsChange:
仍然返回NO
,而在任何地方都没有invalidateLayout
。它不应该只调用一次吗?
最佳答案
我在iOS6设备上测试iOS7 UICollectionViewFlowLayout时遇到了类似的问题。在iOS7设备上,prepareLayout
仅被调用一次,但在iOS6设备上,当其父UIScrollView触发layoutSubviews时将调用ojit_code。
为了解决此问题,我将UICollectionViewFlowLayout类更改为UICollectionViewLayout。在这种情况下,UICollectionViewFlowLayout似乎存在布局问题。
关于ios - UICollectionView的prepareLayout和invalidateLayout,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19399154/