美文网首页
ZLCollectionView学习

ZLCollectionView学习

作者: 愚蠢的兽人 | 来源:发表于2018-09-01 22:06 被阅读131次
    • 设置几个区

    - (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView;

    • 每个区里有几个item

    - (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section;

    • 每个区的layout类型

    - (ZLLayoutType)collectionView:(UICollectionView *)collectionView layout:(ZLCollectionViewFlowLayout *)collectionViewLayout typeOfLayout:(NSInteger)section;

    • 创建每个item的cell,设置cell数据、属性

    - (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath ;

    • PercentLayout代理,指定每个item的宽度percent。item的宽度percent之和在=1之前不能>1。默认return 1

    - (CGFloat)collectionView:(UICollectionView )collectionView layout:(ZLCollectionViewFlowLayout)collectionViewLayout percentOfRow:(NSIndexPath*)indexPath;

    • 每个item的size

    - (CGSize)collectionView:(UICollectionView )collectionView layout:(UICollectionViewLayout)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath;

    返回数值 Layout枚举 描述
    return 宽高 LabelLayout
    FillLayout 严格根据size布局
    return高 PercentLayout 只需指定size的高度
    ClosedLayout 只需指定size的高度,等分width为几份
    • ClosedLayout 设置列数

    - (NSInteger)collectionView:(UICollectionView )collectionView layout:(ZLCollectionViewFlowLayout)collectionViewLayout columnCountOfSection:(NSInteger)section;

    • AbsoluteLayout 设置rect

    - (CGRect)collectionView:(UICollectionView )collectionView layout:(ZLCollectionViewFlowLayout)collectionViewLayout rectOfItem:(NSIndexPath*)indexPath;

    • AbsoluteLayout 设置zIndex

    - (NSInteger)collectionView:(UICollectionView *)collectionView layout:(ZLCollectionViewFlowLayout )collectionViewLayout zIndexOfItem:(NSIndexPath)indexPath;

    • 为每个item设置transform

    - (CATransform3D)collectionView:(UICollectionView *)collectionView layout:(ZLCollectionViewFlowLayout )collectionViewLayout transformOfItem:(NSIndexPath)indexPath;

    • 指定上下item的space

    - (CGFloat)collectionView:(UICollectionView )collectionView layout:(UICollectionViewLayout)collectionViewLayout minimumLineSpacingForSectionAtIndex:(NSInteger)section;

    • 指定左右item的space

    - (CGFloat)collectionView:(UICollectionView )collectionView layout:(UICollectionViewLayout)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section;

    • 指定section内的edgeInset

    - (UIEdgeInsets)collectionView:(UICollectionView )collectionView layout:(UICollectionViewLayout)collectionViewLayout insetForSectionAtIndex:(NSInteger)section;

    • 区头也是ReusableView

    - (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath;

    • 区头size

    - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section;

    • 区头背景view是这么设置的

    - (NSString*)collectionView:(UICollectionView *)collectionView layout:(ZLCollectionViewFlowLayout *)collectionViewLayout registerBackView:(NSInteger)section;

    • 区头view load的时候

    - (void)collectionView:(UICollectionView *)collectionView layout:(ZLCollectionViewFlowLayout *)collectionViewLayout loadView:(NSInteger)section;

    • 区头背景颜色

    - (UIColor*)collectionView:(UICollectionView *)collectionView layout:(ZLCollectionViewFlowLayout *)collectionViewLayout backColorForSection:(NSInteger)section;

    • 区头背景是否延伸覆盖到区头,默认为NO

    - (BOOL)collectionView:(UICollectionView *)collectionView layout:(ZLCollectionViewFlowLayout *)collectionViewLayout attachToTop:(NSInteger)section;

    相关文章

      网友评论

          本文标题:ZLCollectionView学习

          本文链接:https://www.haomeiwen.com/subject/tpauwftx.html