// iOS6.0以后才有的, 這個(gè)類是用于決定UICollectionView的item的布局的NS_CLASS_AVAILABLE_IOS(6_0)@interfaceUICollectionViewFlowLayout:?
UICollectionViewLayout// 行之間的最小間距@property(nonatomic) CGFloat minimumLineSpacing;// item之間的最小間距@property(nonatomic) CGFloat minimumInteritemSpacing;// 如果cell的大小是固定的,應(yīng)該直接設(shè)置此屬性,就不用實(shí)現(xiàn)代理@property(nonatomic) CGSize itemSize;// 這是8.0后才能使用,評(píng)估item的大小@property(nonatomic) CGSize estimatedItemSizeNS_AVAILABLE_IOS(8_0);// 支持兩種滾動(dòng)方向,水平滾動(dòng)和豎直功能// 因此不要再想要使用橫向tableview,直接使用collectionview就okb@property(nonatomic) UICollectionViewScrollDirection scrollDirection;// header參考大小@property(nonatomic) CGSize headerReferenceSize;// footer參考大小@property(nonatomic) CGSize footerReferenceSize;// section的inset,用于設(shè)置與上、左、底、右的間隔@property(nonatomic) UIEdgeInsets sectionInset;// 9.0以后才有的屬性,用于設(shè)置header/footer與tableview的section效果一樣。// 可以懸停@property(nonatomic) BOOL sectionHeadersPinToVisibleBoundsNS_AVAILABLE_IOS(9_0);@property(nonatomic) BOOL sectionFootersPinToVisibleBoundsNS_AVAILABLE_IOS(9_0);
@end
// 創(chuàng)建UI布局UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];// 設(shè)置成固定的大小layout.itemSize = CGSizeMake((kScreenWidth -30) /2, (kScreenWidth -30) /2+20);// 行間距最小設(shè)置為10layout.minimumLineSpacing =10;// 列間距最小設(shè)置為10layout.minimumInteritemSpacing =10;self.collectionView = [[UICollectionView alloc]initWithFrame:self.view.bounds? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? collectionViewLayout:layout];[self.viewaddSubview:self.collectionView];// 注冊(cè)cell[self.collectionViewregisterClass:[HYBGridCell class]? ? ? forCellWithReuseIdentifier:cellIdentifier];// 設(shè)置代理self.collectionView.delegate =self;self.collectionView.backgroundColor = [UIColor blackColor];// 設(shè)置數(shù)據(jù)源代理self.collectionView.dataSource =self;