所以我为我的UICollectionView创建了自己的自定义布局。当我从纵向模式旋转到横向模式时,一些单元格开始重新加载其内容。我认为布局只是改变了每个单元格的位置而没有重新加载内容?
只有在我在集合视图上调用reload Data时才会重新加载内容。
对可能发生的事情的任何想法?
答案 0 :(得分:2)
在轮换时使用invalidateLayout
代替reloadData
,或覆盖shouldInvalidateLayoutForBoundsChange:
并在UICollectionViewLayout子类中返回YES。
答案 1 :(得分:1)
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
[super willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration];
myCollectionView.frame = self.view.bounds;
[myCollectionView.collectionViewLayout invalidateLayout];
}
答案 2 :(得分:0)
不确定你是否瞄准这个目标,但在这里:
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation{
[super didRotateFromInterfaceOrientation:fromInterfaceOrientation];
[self.collectionView reloadData];
}