CollectionView

使用collectionView的方法:
代碼如下:
主要的是這三步:
1、創(chuàng)建layout
2、根據(jù)layout創(chuàng)建collectionView
3、設(shè)置代理

// 1、創(chuàng)建layout
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
layout.minimumLineSpacing = 100;  // 行距
layout.minimumInteritemSpacing = 10;  // 列距
layout.itemSize=CGSizeMake((ScreeFrame.size.width - 40) / 3, (ScreeFrame.size.height - 80) / 4);
layout.sectionInset = UIEdgeInsetsMake(10, 10, 20, 10);
// 2、根據(jù)layout創(chuàng)建collectionView
self.collectionView_Subject = [[UICollectionView alloc] initWithFrame:CGRectMake(0, 10, ScreeFrame.size.width, ScreeFrame.size.height - 64) collectionViewLayout:layout];
// 3、注冊item 和 header Footer (根據(jù)用戶需求)
[self.collectionView_Subject registerNib:[UINib nibWithNibName:@"SubjectCollectionViewCell" bundle:nil]forCellWithReuseIdentifier:@"SubjectId"];
[self.collectionView_Subject registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"header_id"];
[self.collectionView_Subject registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:@"footer_id"];
// 4、設(shè)置代理
    self.collectionView_Subject.delegate = self;
    self.collectionView_Subject.dataSource = self;
self.collectionView_Subject.backgroundColor = [UIColor whiteColor];
[self addSubview:self.collectionView_Subject];

集合視圖的代理就和tableView類似了:設(shè)置sections、rows、cell、以及頭/尾視圖。

1> 設(shè)置item大?。?/p>

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

2> 設(shè)置頭視圖和尾視圖

/**
 *  根據(jù)樣式判斷是頭還是尾
 *  UICollectionElementKindSectionFooter
 *  UICollectionElementKindSectionHeader
 */
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
// 頭視圖大小
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section {
    return CGSizeMake(ScreeFrame.size.width, ScreeFrame.size.height / 12);
}
// 尾視圖大小
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForFooterInSection:(NSInteger)section{
    return CGSizeMake(ScreeFrame.size.width, 10);
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容