前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IOS基金会_ UICollectionView简单易用

IOS基金会_ UICollectionView简单易用

作者头像
全栈程序员站长
发布2022-07-06 14:36:39
3490
发布2022-07-06 14:36:39
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是全栈君。

和表格视图类似 UICollectionView的使用有两种方法

一种是继承UICollectionViewController,这个Controller会自带一个UICollectionView。

第二种是创建一个UIConllectionView 视图放在普通的UIViewController里面。

我们用另外一种

首先声明先声明一个重用标示 和实现托付

#define _CELL @“acell”

@interface yxpViewController ()<UICollectionViewDataSource,UICollectionViewDelegate,UICollectionViewDelegateFlowLayout>

然后初始化UICollectionVIew

– (void)initCollectionView

{

//先实例化一个层

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

//创建一屏的视图大小

UICollectionView *collectionView=[[UICollectionView alloc] initWithFrame:self.view.bounds collectionViewLayout:layout];

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

collectionView.backgroundColor=[UIColor whiteColor];

collectionView.delegate=self;

collectionView.dataSource=self;

[self.view addSubview:collectionView];

}

实现代理方法

#pragma mark –UICollectionViewDataSource

//定义展示的UICollectionViewCell的个数

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

{

return 31;

}

//定义展示的Section的个数

-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView

{

return 1;

}

//每一个UICollectionView展示的内容

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

{

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

cell.backgroundColor = [UIColor colorWithRed:((arc4random()%255)/255.0) green:((arc4random()%255)/255.0) blue:((arc4random()%255)/255.0) alpha:1.0f];

return cell;

}

#pragma mark –UICollectionViewDelegate

//UICollectionView被选中时调用的方法

-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath

{

UICollectionViewCell * cell = (UICollectionViewCell *)[collectionView cellForItemAtIndexPath:indexPath];

cell.backgroundColor = [UIColor colorWithRed:((arc4random()%255)/255.0) green:((arc4random()%255)/255.0) blue:((arc4random()%255)/255.0) alpha:1.0f];

}

//返回这个UICollectionViewCell能否够被选择

-(BOOL)collectionView:(UICollectionView *)collectionView shouldSelectItemAtIndexPath:(NSIndexPath *)indexPath

{

return YES;

}

#pragma mark –UICollectionViewDelegateFlowLayout

//定义每一个UICollectionView 的大小

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

{

return CGSizeMake(90, 90);

}

//定义每一个UICollectionView 的边距

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

{

return UIEdgeInsetsMake(10, 10, 10,10);

}

这样一个简单地UICollection视图就完毕了

版权声明:本文博主原创文章,博客,未经同意不得转载。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/116967.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年1月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档