iOS 手写代码UICollectionView
来源:互联网 发布:淘宝美图软件 编辑:程序博客网 时间:2024/05/01 10:53
//
1) 必须使用下面的方法进行Cell类的注册:
// - (void)registerClass:forCellWithReuseIdentifier:
// - (void)registerClass:forSupplementaryViewOfKind:withReuseIdentifier:
// - (void)registerNib:forCellWithReuseIdentifier:
// - (void)registerNib:forSupplementaryViewOfKind:withReuseIdentifier:
//初始化
UICollectionViewFlowLayout *flowLayout=[[UICollectionViewFlowLayout alloc] init];
[flowLayout setScrollDirection:UICollectionViewScrollDirectionVertical];
self.collectionView = [[UICollectionViewalloc]initWithFrame:CGRectMake(0, kNavHeight, kDeviceWidth,kDeviceHeight-kNavHeight*2-kTabBarHeight-20)collectionViewLayout:flowLayout];
//注册
[self.collectionView registerClass:[VideoCell class]forCellWithReuseIdentifier:@"cell"];
//设置代理
self.collectionView.delegate = self;
self.collectionView.dataSource = self;
[self.view addSubview:self.collectionView];
#pragma mark - collectionView delegate
//设置分区
-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView*)collectionView{
return 1;
}
//每个分区上的元素个数
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
{
return 24;
}
//设置元素内容
- (UICollectionViewCell *)collectionView:(UICollectionView*)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *identify = @"cell";
VideoCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:identify forIndexPath:indexPath];
[cell sizeToFit];
if (!cell) {
}
VideoModel *model = [self.videoModelsobjectAtIndex:indexPath.row];
NSURL *url = [NSURL URLWithString:model.videoImgURL];
[cell.imgView setImageWithURL:url];
cell.titleLbale.text = model.videoTitle;
return cell;
}
//设置元素的的大小框
-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
{
UIEdgeInsets top = {5,10,15,5};
return top;
}
//设置顶部的大小
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section{
CGSize size={0,0};
return size;
}
//设置元素大小
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{
//NSLog(@"%f",(kDeviceHeight-88-49)/4.0);
return CGSizeMake(240,(kDeviceHeight-kNavHeight*2-kTabBarHeight-20)/4.0);
}
//点击元素触发事件
-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
NSLog(@"%@",indexPath);
DetailVideoViewController *detailVC = [[DetailVideoViewControlleralloc]init];
[self.navigationController pushViewController:detailVCanimated:YES];
[detailVC release];
}
- iOS 手写代码UICollectionView
- iOS 手写代码UICollectionView
- iOS 手写代码UICollectionView
- iOS 手写代码UICollectionView
- iOS 手写代码UICollectionView
- iOS 手写代码UICollectionView
- iOS 手写代码UICollectionView
- iOS 手写代码UICollectionView
- iOS UICollectionView手写代码实现步骤
- IOS 手写UICollectionView
- 手写CollectionVeiwCell和UICollectionView
- IOS之UICollectionView初探(代码实现)
- iOS UICollectionView 纯代码,无xib
- iOS 开发 UICollectionView纯代码设置
- iOS 开发 UICollectionView纯代码设置
- iOS 纯代码创建UICollectionView【原创】
- uicollectionview 流视图手写实现
- IOS UICollectionView
- 基于状态机的按键程序
- Direct9 ID3DXFont绘制
- BZOJ2726 [SDOI2012]任务安排
- C++中const与指针、引用的分析
- 【BZOJ】【P1197】【HNOI2006】【花仙子的魔法】【题解】【DP】【庆祝月考结束】
- iOS 手写代码UICollectionView
- iOS中属性化字符串
- Android 4.0模拟器无3G信号的解决方案
- getopt和getopt_long函数
- android使用socket使底层和framework通信
- ScrollView介绍
- DM36x Rate Control Modes
- shell浅谈之十一别名、列表及数组
- 黯然离华,Adobe失利的真正原因何在?