旋转时未调用UICollectionViewDelegateFlowLayout方法

时间:2015-02-13 19:17:32

标签: ios ios8 uikit uicollectionview

在我的集合视图布局(UICollectionViewFlowLayout的子类)中,我定义了:

- (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds {
    return YES;
}

我的期望是,由于旋转是一个边界变化,我的布局将重新计算。但是当我在:

中设置断点时
- (CGSize)collectionView:(UICollectionView *)collectionView
                  layout:(UICollectionViewLayout *)collectionViewLayout
  sizeForItemAtIndexPath:(NSIndexPath *)indexPath {

屏幕旋转时不会触发断点。有谁知道为什么?

1 个答案:

答案 0 :(得分:2)

collectionView:layout:sizeForItemAtIndexPath:方法应该在UI CollectionViewDelegate类的类中实现。不在UICollectionViewLayout的子类中。 你在哪里实现的?

PS。没有必要同时使用两者。如果您有自定义UICollectionViewLayout类,请使用layoutAttributesForItemAtIndexPath:而不是