欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新
页面位置 : > > > 内容正文

iOS UICollectionView手写代码实现步骤

来源: 开发者 投稿于  被查看 16563 次 评论:31

iOS UICollectionView手写代码实现步骤


iOS UICollectionView手写代码实现步骤

//

// ViewController.h

// collectionView手写代码

//

// Created by yangxiuying on 14/11/28.

// Copyright (c) 2014年 lanjiying. All rights reserved.

//


#import


@interface ViewController : UIViewController

{

NSString * identifier;

}

//

// ViewController.m

// collectionView手写代码

//

// Created by yangxiuying on 14/11/28.

// Copyright (c) 2014年 lanjiying. All rights reserved.

//


#import "ViewController.h"


@interface ViewController ()



@end

@implementation ViewController


- (void)viewDidLoad {

[super viewDidLoad];

// Do any additional setup after loading the view, typically from a nib.

identifier = @"cell";

// 初始化layout

UICollectionViewFlowLayout * flowLayout =[[UICollectionViewFlowLayout alloc] init];

[flowLayout setScrollDirection:UICollectionViewScrollDirectionVertical];

// UIEdgeInsets top = {15,10,15,5};

// [flowLayout setSectionInset:top];

UICollectionView * collectionView =[[UICollectionView alloc] initWithFrame:CGRectMake(0, 30, 320, 480)collectionViewLayout:flowLayout];

//注册单元格

[collectionView registerClass:[UICollectionViewCell class]forCellWithReuseIdentifier:identifier];

//设置代理

collectionView.delegate = self;

collectionView.dataSource = self;

[self.view addSubview:collectionView];

}

#pragma mark - collectionView delegate

//设置分区



-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView

{

return 1;

}

//设置元素的的大小框

-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section

{

UIEdgeInsets top = {30,15,30,15};

return top;

}

//每个分区上得元素个数

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section

{

return 24;

}

//设置元素内容

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath

{

UICollectionViewCell * cell =[collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath];

[cell sizeToFit];

cell.backgroundColor =[UIColor greenColor];

return cell;

}

//设置单元格宽度

//设置元素大小

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

return CGSizeMake(140,160);

}


用户评论