11

UICollectionView cihazım, aygıt yönüne bağlı olarak farklı şekilde kullanılıyor. Resim sahip olduğum şeyi ve neye ihtiyacım olduğunu açıklıyor.UICollectionView özel yatay akış - çoklu bölümler

varsayılan FlowLayout ile "Ona ihtiyacım olarak yatay kaydırma" veya ben customflowlayout (Kılavuz takdir) veya birden fazla CollectionViews yapmaları gerekir mi almak mümkün mü?

Collection flow layout

cevap

4

Ben DateFlowLayout kullanarak çözdü. Garip isim ama bazı yapılandırmalar ile çalışır.

Bu

benim sana kurulum oldu o (sadece yatay yönde için kullanılır):

- (void)layoutForOrientation:(UIInterfaceOrientation)orientation { 
    bool isPortrait = UIInterfaceOrientationIsPortrait(orientation); 

    self.collectionView.frame = isPortrait ? CGRectMake(0, 0, 768, 180) : CGRectMake(0, 60, 246, 595); 
    self.collectionView.collectionViewLayout = isPortrait ? DateFlowLayout.new : UICollectionViewFlowLayout.new; 
    self.flowLayout = ((UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout); 

    self.flowLayout.scrollDirection = isPortrait ? UICollectionViewScrollDirectionHorizontal : UICollectionViewScrollDirectionVertical; 
    self.flowLayout.headerReferenceSize = isPortrait ? CGSizeMake(5, 30) : CGSizeMake(246, 40); //width is margin to the left of the header - must be bigger than 0 to show headers correct. 
    self.flowLayout.minimumInteritemSpacing = isPortrait ? 10 : 0; 
    self.flowLayout.minimumLineSpacing = isPortrait ? 17 : 7; 
    self.flowLayout.sectionInset = isPortrait ? UIEdgeInsetsMake(27, 30, 25, 0) : UIEdgeInsetsMake(0, 14, 0, 0); 
    //self.flowLayout.itemSize = CGSizeMake(58, 85); //You might need this 
    self.collectionView.alwaysBounceVertical = isPortrait ? NO : YES; 
} 
+2

Hey Morten, ben bir süre oldu ama herhangi bir fikir neden benim başlık üstünde yapışmasını değil, biliyorum koleksiyon görünümümde, bunun önünde, yarıya (yüksekte) yerleştirilmiş. Teşekkürler! –

+0

Daha fazla bilgi veremem - bana deneme ve yanılma .. –

+0

yeterince adil. O zaman bundan biraz daha fazla yapacağım! en azından mümkün olduğunu biliyorum :) –