首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

iOS流布局UICollectionView系列二——UICollectionView的代理方法

UICollectionView的简介和简单使用:http://my.oschina.net/u/2340880/blog/522613 二、UICollectionViewDataSource协议         这个协议主要用于...collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section; 设置返回每个item的属性 - (UICollectionViewCell...); 已经展示某个Item时触发的方法 - (void)collectionView:(UICollectionView *)collectionView didEndDisplayingCell:(UICollectionViewCell...这个方法用于设置要展示的菜单选项 - (BOOL)collectionView:(UICollectionView *)collectionView canPerformAction:(SEL)action...forItemAtIndexPath:(NSIndexPath *)indexPath withSender:(nullable id)sender; 这个方法用于实现点击菜单按钮后的触发方法,通过测试

2K20

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

标准的UICollectionView包含三个部分,它们都是UIView的子类:     • Cells 用于展示内容的主体,对于不同的cell可以指定不同尺寸和不同的内容,这个稍后再说     • Supplementary...1.5 关于Cell         相对于UITableViewCell来说,UICollectionViewCell没有这么多花头。...首先UICollectionViewCell不存在各式各样的默认的style,这主要是由于展示对象的性质决定的,因为UICollectionView所用来展示的对象相比UITableView来说要来得灵活...重用         UICollectionViewCell其实只实例化了能应付一屏显示范围的对象实例,而在cellForItemAtIndexPath方法中重复更新此实例的业务数据来达到显示不同Cell...UICollectionViewCell的实例化是通过dequeueReusableCellWithReuseIdentifier来实现,代码示例如下: HJInfoCollectionCell *cell

42230

WWDC2016 Session笔记 - iOS 10 UICollectionView新特性

目录 1.UICollectionViewCell顺滑的滑动体验 2.UICollectionViewCell的Pre-Fetching预加载 3.UITableViewCell的Pre-Fetching...先来看看老的 UICollectionViewCell的声明周期。当用户滑动屏幕,屏幕外有一个cell准备加载显示进来。...以上就是在iOS10之前的整个UICollectionViewCell的生命周期。 接下来我们就来看看iOS 10的UICollectionViewCell生命周期是怎么样的。...上面说的iOS 10里面的场景同样适用于多列的情况。 这时我们每次只加载一个cell,而不是每次加载一行的cell。当第一个cell准备好之后再叫第二个cell准备。...UICollectionView的流畅的滑动解决了,那么在UICollectionViewCell在加载的时候所花费的时间,怎么解决呢??

1.9K30

Swift 探索 UICollectionView 之 SupplementaryView 和 Decoration View

UICollectionView.elementKindSectionHeader 和 UICollectionView.elementKindSectionFooter 来表示3.注册视图的标识符,用于...Supplementary View 的实例,然后 UICollectionView 将其加载;它有三个参数,分别是: 1.UICollectionView 对象2.追加视图类型,用于区别是 header...还是 footer3.IndexPath 对象,用于判断是哪个 section,从而初始化不同的 headerView 和 footerView 第三,第四个方法就比较简单了,用于返回追加视图(headerView...self.view.frame.size.height), collectionViewLayout: flowLayout) // 注册 Cell collectionView.register(UICollectionViewCell.self...func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell

1.9K10

手把手带你撸一个网易云音乐首页(三)

部分代码如下: import UIKit import Foundation import SnapKit import Kingfisher class HomeMenuCell: UICollectionViewCell...make.top.equalTo(self.albumCover.snp.bottom).offset(5) } } .... } /// 通用的卡片滚动视图,该控件适用于横向滚动并且上图下文形式...func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell...pageSpace/8.0) && (lastOffset.x >= offsetMin) && (lastOffset.x <= offsetMax) { // 分页因子,用于计算滑过的...来构建网易云音乐首页就差不多讲完了,我们再总结一下,在本文中我们主要讲解了如何来构建 UI 视图, 由于在我们首页里的 Cell 的样式有不同之处但也有相似的地方,所以我们创建了一个基类 BaseViewCell, 用于展示

2.3K10

单元测试】--高级主题

一、模拟与存根深入 在单元测试中,模拟(Mock)和存根(Stub)是两种常用的测试替代品,用于模拟外部依赖或模拟特定行为,以便测试能够独立运行。...它不仅可以用于模拟外部依赖,还可以用于测试中的一部分,以确保测试环境的可控制性。在NUnit中,你可以直接创建存根对象。...通常,单元测试是白盒测试,测试人员具有对被测试单元的内部代码的知识。 集成测试: 集成测试是用于验证不同单元之间的交互和组件之间的协同工作。它关注不同单元、模块、组件或服务之间的接口和通信。...单元测试和集成测试是软件测试过程中的两个关键组成部分。它们的目标、范围和方法不同,但共同努力以确保软件系统的质量和可靠性。单元测试通常用于验证单元内的代码,而集成测试用于验证不同组件之间的协同工作。...四、总结 模拟与存根用于单元测试中,模拟模拟外部依赖,存根模拟特定行为。测试金字塔强调多层次测试,包括单元测试、集成测试、服务测试和UI测试。

19520

单元测试入门:是什么?类型和工具

单元测试中,这些将以模拟对象的形式解决,这些对象仅出于在该部分代码上进行单元测试的目的而创建。 单元测试工具 有几种自动化工具可用于协助单元测试。...NUnit:NUnit被广泛用于所有.net语言的单元测试框架。它是一个开放源代码工具,允许手动编写脚本。它支持可以并行运行的数据驱动测试。 JMockit:JMockit是开源的单元测试工具。...EMMA:EMMA是一个开源工具包,用于分析和报告用Java语言编写的代码。Emma支持覆盖类型,例如方法,行,基本块。它是基于Java的,因此它没有外部库依赖关系,并且可以访问源代码。...PHPUnit:PHPUnit是用于PHP程序员的单元测试工具。它只占用一小部分称为单元的代码,然后分别测试每个单元。该工具还允许开发人员使用预定义断言方法来断言系统以某种方式运行。...测试驱动开发(TDD)和单元测试 TDD中的单元测试涉及测试框架的广泛使用。为了创建自动化的单元测试,使用了单元测试框架。单元测试框架不是TDD独有的,但对于它来说是必不可少的。

1.1K10

iOS 瀑布流实现「建议收藏」

section{ return self.imageArray.count; } //collectionview的重用和tableview不同,后者可以不用重用,但是前者必须使用重用机制 - (UICollectionViewCell...UICollectionViewDelegateFlowLayout> delegate; @property (nonatomic,strong)NSMutableArray * columnHeightArray;//存放列高度的数组,用于后面比较从最小列开始排...@property (nonatomic,strong)NSMutableDictionary * cellInfoDic;//用于存放cell位置信息的字典 @property (nonatomic...,assign)NSInteger cellCount;//cell的总个数 @end 在属性变量中我们定义了一个 一个delegate,一个用于存放列高度的数组,一个存放cell位置信息的字典,一个...由于我们的cell是用来展示图片的,所以自然就有image这个属性 #import @interface WaterFallCollectionViewCell : UICollectionViewCell

2.2K41
领券