【ios】带分区头的九宫格模型(附源码)

【pre】布局用的是SDAutoLayout,当然也可以自己调整为原生布局

 

一、注册表头

        [_collectionView registerClass:[EnvironmentSupervisionCollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"QCReusableView"];

二、设置宽高和复用内容

#pragma mark - UICollectionViewDelegateFlowLayoutDelegate:分区表头的设置

//size

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

    

    CGSize size = CGSizeMake(CKScreenW, 30);

    return size;

}

 

//复用内容

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

    

    UICollectionReusableView *reusableView = nil;

    

    if (kind == UICollectionElementKindSectionHeader) {

        

        EnvironmentSupervisionCollectionReusableView *headerView = (EnvironmentSupervisionCollectionReusableView *)[collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"QCReusableView" forIndexPath:indexPath];

        

        headerView.titleLabel.text = self.titleArr[indexPath.section];

        

        reusableView = headerView;

    }

    

    return reusableView;

}

三、自定义UICollectionReusableView的实现

.h

#import <UIKit/UIKit.h>

@interface EnvironmentSupervisionCollectionReusableView : UICollectionReusableView

@property(nonatomic,strong) UILabel *titleLabel;

@end

.m

#import "EnvironmentSupervisionCollectionReusableView.h"

 

@implementation EnvironmentSupervisionCollectionReusableView

-(instancetype)initWithFrame:(CGRect)frame{

    

    self = [super initWithFrame:frame];

    if (self) {

        

        self.titleLabel = [UILabel new];

        [self addSubview:self.titleLabel];

        self.titleLabel.sd_layout

        .leftSpaceToView(self, 20)

        .widthIs(self.frame.size.width-40)

        .heightIs(self.frame.size.height)

        .centerYEqualToView(self);

        self.titleLabel.font= [UIFont systemFontOfSize:14];

        self.titleLabel.textColor = RGBA(103, 103, 103, 1);

        

    }

    return self;

}

@end

POST:https://github.com/canwhite/QCScratchableLatexWithSectionHeader

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值