使用UICollectionView制作滑动viewpage

来源:互联网 发布:土方工程量计算软件 编辑:程序博客网 时间:2024/05/21 02:48

代码如下:

#import "MSViewController.h"@interface CollectionCell : UICollectionViewCell@property (nonatomic, weak) UILabel *titleLabel;@end@implementation CollectionCell-(instancetype)initWithFrame:(CGRect)frame{    self = [super initWithFrame:frame];    if (self) {        UILabel *titleLabel = [[UILabel alloc] initWithFrame:self.bounds];        [titleLabel setTextAlignment:NSTextAlignmentCenter];        self.titleLabel = titleLabel;        [self.contentView addSubview:self.titleLabel];        self.backgroundColor = [UIColor yellowColor];    }    return self;}@end////////////////////////////////////////////////////////////////////////@interface MSViewController () <UICollectionViewDataSource>@property (nonatomic, weak) UICollectionView *collectionView;@end@implementation MSViewController- (void)viewDidLoad{    [super viewDidLoad];    //每项大小    CGSize itemSize = CGSizeMake([UIScreen mainScreen].bounds.size.width, CGRectGetHeight(self.view.bounds));        UICollectionViewFlowLayout *layout = [UICollectionViewFlowLayout new];    layout.scrollDirection = UICollectionViewScrollDirectionHorizontal;    //设置哪种方向滚动    layout.itemSize = itemSize;        UICollectionView *collectionView = [[UICollectionView alloc] initWithFrame:self.view.bounds collectionViewLayout:layout];    collectionView.backgroundColor = [UIColor whiteColor];    collectionView.dataSource = self;    [collectionView registerClass:[CollectionCell class] forCellWithReuseIdentifier:@"Cell"];    self.collectionView = collectionView;    [self.view addSubview:self.collectionView];}- (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}#pragma mark - UICollectionViewDataSource methods- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{    return 5;}// The cell that is returned must be retrieved from a call to -dequeueReusableCellWithReuseIdentifier:forIndexPath:- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{    static NSString *identifierCell = @"Cell";    CollectionCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifierCell forIndexPath:indexPath];        cell.titleLabel.text = [NSString stringWithFormat:@"%d",indexPath.row];        return cell;}@end

效果:




1 1
原创粉丝点击