iOS Develop

UICollectionView(I)

2018-11-29  本文已影响0人  Harely
#define JScreen_Width  [UIScreen mainScreen].bounds.size.width

UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
        
 UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
   
     
CGFloat   cellSpace   = 6.0;
//每一个行有多少个item
NSInteger cellNumber  = 3;
//item的宽度
CGFloat   cellWidth   = (JScreen_Width - 52) / cellNumber;
//item的高度
CGFloat   cellHeight  = cellWidth;
        
//item的size,这个也可以通过代理方法完成
flowLayout.itemSize = CGSizeMake(cellWidth, cellHeight);
//每个item的水平间距
flowLayout.minimumInteritemSpacing = cellSpace/2;
//每个item的竖直间距
flowLayout.minimumLineSpacing = cellSpace;
//第一行item距离顶部的距离,相当于UITableView的header的高度设置
flowLayout.headerReferenceSize = CGSizeMake(JScreen_Width, 0);
        

UICollectionView *selectView = [[UICollectionView alloc] initWithFrame:CGRectMake(20, 184, JScreen_Width -2*20, 200) collectionViewLayout:flowLayout];


#pragma mark -- UICollectionViewDelegateFlowLayout
//设置其边界(上,左,下,右)
- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section {
    if (self.chooseType == ChooseElementTypePicture) {
        return UIEdgeInsetsZero;
    }else{
        return UIEdgeInsetsMake(-20, 20, 0, 20);
    }
}

......
//还有其他代码就不贴出来了

效果图:


效果图
上一篇 下一篇

猜你喜欢

热点阅读