UICollectionView Header 和Footer

@interface FooterView : UICollectionReusableView

Footer  和 Header  基于  UICollectionReusableView


重用标识


static NSString * headeridentifier = @"header";
static NSString * footeridentifier = @"FOOTER";


  注册重用标识符

     第一个参数 : 返回的view类型
     第二个参数: 设置view的种类 (header , footer)
     第三个参数: 设置重用标识符
    
    [cView registerClass:[HeaderView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:headeridentifier];
   

    [cView registerClass:[FooterView class] forSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:footeridentifier];



Header 和 Footer 重用


- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
{
  if ([kind isEqualToString:UICollectionElementKindSectionHeader]) {
    
    HeaderView * headerView = [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:headeridentifier forIndexPath:indexPath];
    headerView.backgroundColor = [UIColor whiteColor];
    headerView.label.text = @"header";
    headerView.label.textAlignment = NSTextAlignmentCenter;
    
     return headerView;
  }
 
    
    FooterView * footerView = [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:footeridentifier forIndexPath:indexPath];
    footerView.backgroundColor = [UIColor whiteColor];
    footerView.label.text = @"footer";
    footerView.label.textAlignment = NSTextAlignmentCenter;
    
    
    return footerView;
    
}