在我的集合视图布局(UICollectionViewFlowLayout
的子类)中,我定义了:
- (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds {
return YES;
}
我的期望是,由于旋转是一个边界变化,我的布局将重新计算。但是当我在:
中设置断点时- (CGSize)collectionView:(UICollectionView *)collectionView
layout:(UICollectionViewLayout *)collectionViewLayout
sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
屏幕旋转时不会触发断点。有谁知道为什么?
答案 0 :(得分:2)
collectionView:layout:sizeForItemAtIndexPath:方法应该在UI CollectionViewDelegate类的类中实现。不在UICollectionViewLayout的子类中。 你在哪里实现的?
PS。没有必要同时使用两者。如果您有自定义UICollectionViewLayout类,请使用layoutAttributesForItemAtIndexPath:而不是