adresindeki düzeni güncelleştirmiyor Bu, portre modundayken uygulamanın görünümüdür. o yatay moda döndürüldüğünde Koleksiyon Görünümü, Rotation
o film şeridi aracılığıyla oluşturulur burada
UICollectionViewController
gösterildiği gibi UIWindow
dönen olmadığını gösteren bu
görünüm ayıklayıcıya benziyor. shouldInvalidateLayoutForBoundsChange
'u uygulayan UICollectionViewFlowLayout
alt sınıflarını denedim, ancak sorunumu gidermiyor.
- (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds {
CGRect oldBounds = self.collectionView.bounds;
if (CGRectGetWidth(newBounds) != CGRectGetWidth(oldBounds)) {
return YES;
}
return NO;
}
Lütfen nelerin kontrol edileceğine veya ek kod için hata ayıklama isteklerine ilişkin fikir verin.
Düzenleme - MirekE tarafından önerildiği gibi, CollectionView
'a kısıtlamalar eklemeyi denedim, ancak yapamadım. Editör-> Pin için tüm seçenekler CollectionView
için kullanılamaz.
Düzen, Andrea'ya yanıt - Ben iOS8.3 hedeflediğim
. Benim anlayışım, rotasyon olarak adlandırılan ana yöntemin, UIContentContainer
protocol'dan olan viewWillTransitionToSize:withTransitionCoordinator:
olmasıdır. Benim CollectionViewController aşağıdaki eklediniz, ancak aynı sorun sadece tuval üzerine toplama görünümü sürüklemek gibi görünüyor
-(void)viewWillTransitionToSize:(CGSize)size
withTransitionCoordinator:(id <UIViewControllerTransitionCoordinator>)coordinator {
[self.collectionView.collectionViewLayout invalidateLayout];
[self.collectionView reloadData];
}
Her hücreye özgü kısıtlamalar verdiğiniz gibi görünüyor, gerekli mi? –
Vinay - evet hücrenin içindeki etikette "topMargin" ve "centerX" kısıtlaması var, ancak hücrenin kendisinde herhangi bir kısıtlama yok. – Idr
Doktora göre, bir noktada viewWillTransitionToSize uygulamasında süper uygulamayı çağırmanız gerektiğini düşünüyorum. –