#import "ViewController.h"
#define kScreenW [UIScreen mainScreen].bounds.size.width
#define kScreenH [UIScreen mainScreen].bounds.size.height
@interface ViewController ()<UICollectionViewDataSource,UICollectionViewDelegateFlowLayout>
@end
@implementation ViewController
//全局变量
static NSString *cell_identy = @"cell";
- (void)viewDidLoad {
[super viewDidLoad];
/*____________ UICollectionView 集合视图 ___________________________________________________*/
/**
* 步骤:
1.布局类
2.集合视图
3.注册单元格
4.定制单元格
*/
//1⃣️布局类
/**
* 设置单元格:大小 间距 头视图大小 尾视图大小 滑动方向
*/
//I.创建布局对象
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];
//II.设置布局属性
//1.单元格大小 --> 决定 行/列 的单元格的个数
layout.itemSize = CGSizeMake((kScreenW-40)/3.0, kScreenW/3.0);
//2.设置最小间隙
/**
* 滑动方向垂直:水平间隙由单元格宽度和集合视图宽度决定 最小不能低于最小间隙
垂直间隙就是最小垂直间隙
水平方向滑动:垂直间隙由单元格高度和集合视图高度决定 最小不能低于最小间隙
水平间隙就是最小水平间隙
*/
//垂直方向间隙 (间隙本身是水平的)
layout.minimumLineSpacing = 20;
//水平方向间隙 (间隙本身是垂直的)
layout.minimumInteritemSpacing = 1;
//3.设置滚动方向(向哪滑动)
/**
* UICollectionViewScrollDirectionVertical,垂直
UICollectionViewScrollDirectionHorizontal 水平
*/
layout.scrollDirection = UICollectionViewScrollDirectionVertical;
//4.头/尾视图尺寸
// layout.headerReferenceSize = CGSizeMake(0, 0);
// layout.footerReferenceSize = CGSizeMake(0, 0);
//2⃣️集合视图
//I.同步布局类对象创建
UICollectionView *collectionView = [[UICollectionView alloc]initWithFrame:self.view.bounds collectionViewLayout:layout];
//II.属性
collectionView.delegate = self;
collectionView.dataSource = self;
[self.view addSubview:collectionView];
//3⃣️注册单元格
/**
* 将UICollectionViewCell类的单元格 加上 cell_identy复用标记
*/
[collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:cell_identy];
}
#pragma mark --UICollectionViewDataSource
//返回item个数
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
return 30;
}
//返回单元格 复用
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
//✅使用注册单元格
UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:cell_identy forIndexPath:indexPath];
cell.backgroundColor = [UIColor cyanColor];
return cell;
}
#pragma mark --UICollectionViewDelegateFlowLayout
//边缘大小
- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section{
return UIEdgeInsetsMake(10, 10, 10, 10);
}
@end
Day.03.05UICollectionView 集合视图
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...