首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS流布局UICollectionView系列一——初识与简单使用UICollectionView

UICollectionView的更多属性前,我们先来使用其进行一个最简单的流布局试试看,controller的viewDidLoad添加如下代码:     //创建一个layout布局类     ...是iOS6.0之前的新类,因此这里统一了从复用池中获取cell的方法,没有再提供可以返回nil的方式,并且UICollectionView的回调代理,只能使用从复用池中获取cell的方式进行cell...的返回,其他方式会崩溃,例如: //这是正确的方法 -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView ...:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{     UICollectionViewCell...的位置数组 - (NSArray *)indexPathsForVisibleItems; //下面三个方法是iOS9添加的方法,用于获取头尾视图 - (UICollectionReusableView

2.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

iOS开发:UICollectionViewCell删除的实现方法

前言 iOS开发过程UICollectionView的使用仅次于UITableView的使用,而且UICollectionView的使用也很重要,需要很好的运用掌握相关知识点。...本篇博文就来讲解一下UICollectionView使用,删除UICollectionViewCell的步骤方法,仅供参考。...使用场景:UICollectionView的cell,点击长按手势删除列表的其中一个UICollectionViewCell的方法。具体实现步骤如下所示。...@[@"95",@"95",@"90",@"90",@"95",@"85"]; _dateSource = [NSMutableArray arrayWithArray:customArr]; 2、UICollectionView...代理方法cellForItemAtIndexPath:UICollectionViewCell添加长按手势,添加长按手势的时候需要添加代理方法 UILongPressGestureRecognizer

2.1K41

UICollectionView

平常我在业务开发,绝大部分情况都是使用的UITableView,而UICollectionView则是极少情况下才会去使用,这就导致了我对UICollectionView略感陌生。...UITableView的row,对应到UICollectionView中就是item,因为一行可以展示多个cell,使用row(行)不能准确地表达。...)section; - (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath...:(NSIndexPath *)indexPath; 我们知道,UITAbleViewCell是有四种默认样式的,但是UICollectionViewCell是没有默认样式的,所有的控件都需要自定义添加到...而UICollectionViewCell的获取,必须是先注册,然后通过dequeue方法获取。 系统默认给我们提供了一种layout——UICollectionViewFlowLayout。

1.1K20

iOS流布局UICollectionView系列三——使用FlowLayout进行更灵活布局

iOS流布局UICollectionView系列三——使用FlowLayout进行更灵活布局 一、引言         前面的博客介绍了UICollectionView的相关方法和其协议的方法,但对布局的管理类...二、将九宫格式的布局进行升级         第一篇博客,通过UICollectionView,我们很轻松的完成了一个九宫格的布局,但是如此中规中矩的布局方式,有时候并不能满足我们的需求,有时我们需要每一个...:(NSInteger)section{     return 100; } -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView...footerReferenceSize; 设置分区的EdgeInset @property (nonatomic) UIEdgeInsets sectionInset; 这个属性可以设置分区的偏移量,例如我们刚才的例子添加如下设置...FlowLayout时静态的进行设置,如果我们需要动态的设置这些属性,就像我们例子的,每个item的大小会有差异,我们可以通过代理来实现。

1.9K30

【IOS开发基础系列】UICollectionView专题

1.3 关于重用         为了得到高效的View,对于cell的重用是必须的,避免了不断生成和销毁对象的操作,这与UITableView的情况是一致的。...但值得注意的时,UICollectionView,不仅cell可以重用,Supplementary View和Decoration View也是可以并且应当被重用的。...iOS5,Apple对UITableView的重用做了简化,以往要写类似这样的代码: UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier...这个特性很受欢迎,因此UICollectionViewApple继承使用了这个特性,并且把其进行了一些扩展。...重用         UICollectionViewCell其实只实例化了能应付一屏显示范围的对象实例,而在cellForItemAtIndexPath方法重复更新此实例的业务数据来达到显示不同Cell

36930

iOS流布局UICollectionView系列七——三维的球型布局

iOS流布局UICollectionView系列七——三维的球型布局 一、引言         通过6篇的博客,从平面上最简单的规则摆放的布局,到不规则的瀑布流布局,再到平面的圆环布局,我们突破了线性布局的局限...,在后面,我们将布局扩展到了空间,Z轴上进行了平移,我们实现了一个类似UIPickerView的布局模型,其实我们还可以再进一步,类比于平面布局,picKerView只是线性排列布局空间上的旋转与平移...(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{     UICollectionViewCell...我们的layout类,将代码修改成如下: -(void)prepareLayout{     [super prepareLayout];      } //返回的滚动范围增加了对x轴的兼容 -(CGSize...trans3D.m34 = -1/900.0;          CGFloat radius = 15/tanf(M_PI*2/itemCounts/2);     //根据偏移量 改变角度     //添加了一个

1.4K20

(转)iOS开发之UICollectionViewController系列(二) :详解CollectionView各种回调

一、Demo总览 下图是本篇博客Demo的最终运行效果,下面是我们要做的事情: 给每个Section添加自定义的重用Header和Footer 2.调整第一个Section的上左下右的边距(UIEdgeInsets...*)collectionView { return 5; } 2、UICollectionViewDataSource的回调方法,还有一个是返回每个SectionCell的数量的方法...UICollectionView的Section我们可以为其增加Header View和Footer View, 也就是官方文档上提到的Supplementary View(追加视图)。...(1)创建UICollectionReusableView 追加视图可以Storyboard上添加,然后设置重用标示符,代码中使用即可。...下面的代码就是ViewDidLoad调用注册UICollectionReusableView的方法。

7.6K40

iOS流布局UICollectionView系列四——自定义FlowLayout进行瀑布流布局

更加灵活的进行布局,但都限制系统为我们准备好的布局框架,还是有一些局限性,例如,如果我要进行瀑布流似的不定高布局,前面的方法就很难满足我们的需求了,如下: ?...这种布局无疑app的应用更加广泛,商品的展示,书架书目的展示,都会倾向于采用这样的布局方式,当然,通过自定义FlowLayout,我们也很容易实现。...我们新建一个文件继承于UICollectionViewFlowLayout: @interface MyLayout : UICollectionViewFlowLayout 为了演示的方面,这里我不错更多的封装,添加一个属性...总之,FlowLayout类将每个item的位置等布局信息放在一个数组collectionView布局时,会调用FlowLayout类layoutAttributesForElementsInRect...:(NSInteger)section{     return 100; } -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView

2.9K20
领券