1
我有一個UIViewCollection當旋轉屏幕時工作得很漂亮。一切都完美調整。但是,當我繼續到模態視圖控制器,然後旋轉,然後關閉,只有「一些」旋轉任務完成。它不會調整單元格大小。UIViewCollection調整後,在模態視圖控制器中旋轉後的單元格
我沒有安裝在我的模態視圖控制器的委託,它調用父視圖控制器的didRotate ...
- (void)didRotateFromInterfaceOrientationInModal:(UIInterfaceOrientation)fromInterfaceOrientation {
[self.collectionView performBatchUpdates:^{
[self.collectionView setCollectionViewLayout:self.collectionView.collectionViewLayout animated:YES];
} completion:nil];
[self.collectionView.collectionViewLayout invalidateLayout];
[self.collectionView invalidateIntrinsicContentSize];
}
- (void)willRotateToInterfaceOrientationInModal:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
[self.collectionView.collectionViewLayout invalidateLayout];
[self.collectionView invalidateIntrinsicContentSize];
}
而且我已經驗證了,當我在旋轉,他們被解僱一個模態視圖控制器。
同樣,當我從collectionviewcontroller旋轉時,單元格大小被重新計算,只有在模態視圖控制器中旋轉時,單元格大小纔會被重新計算。在兩種情況下都會發射完全相同的代碼。
是你的模態的原始視圖控制器的子視圖控制器?如果不是將其作爲子視圖控制器添加,則將其呈現。 –
這是一個子視圖控制器。父UICollectionViewController呈現模態子UIViewController。 – user432297