- 这是最最基本的UICollectionView横向滚动的教学,代码很少,全在
viewController.m
里面编写,代码如下:
#import "ViewController.h"
static NSString *cellID = @"cell";
@interface ViewController ()<UICollectionViewDataSource, UICollectionViewDelegate>
@property(nonatomic, strong) UICollectionView *myCollectionView;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
CGRect collectionViewFrame= CGRectMake(0, 20, [UIScreen mainScreen].bounds.size.width, 100);
UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
// 设置UICollectionView为横向滚动
flowLayout.scrollDirection = UICollectionViewScrollDirectionHorizontal;
// 每一行cell之间的间距
flowLayout.minimumLineSpacing = 50;
// 每一列cell之间的间距
// flowLayout.minimumInteritemSpacing = 10;
// 设置第一个cell和最后一个cell,与父控件之间的间距
flowLayout.sectionInset = UIEdgeInsetsMake(0, 20, 0, 20);
// flowLayout.minimumLineSpacing = 1;// 根据需要编写
// flowLayout.minimumInteritemSpacing = 1;// 根据需要编写
// flowLayout.itemSize = CGSizeMake(70, 70);// 该行代码就算不写,item也会有默认尺寸
UICollectionView *collectionView = [[UICollectionView alloc] initWithFrame:collectionViewFrame collectionViewLayout:flowLayout];
collectionView.backgroundColor = [UIColor redColor];
collectionView.dataSource = self;
collectionView.delegate = self;
_myCollectionView = collectionView;
[self.view addSubview:collectionView];
[self.myCollectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:cellID];
}
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
return 15;
}
- (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:cellID forIndexPath:indexPath];
if (!cell ) {
NSLog(@"cell为空,创建cell");
cell = [[UICollectionViewCell alloc] init];
}
cell.backgroundColor = [UIColor yellowColor];
return cell;
}
@end
Snip20161213_75.png
网友评论