链氪巴士
  1. 首页
  2. 站点导航
  3. 文章
  4. 快讯
  5. 软件
  6. 书刊
  7. 关于

ZLCollectionView: 为复杂页面布局打造的CollectionView

ZLCollectionView是一个基于UICollectionView构建的布局工具,旨在解决类似淘宝、京东、国美首页等复杂布局需求。它支持多种布局方式,包括标签、列、百分比、定位、填充式、瀑布流布局等,支持纵向和横向布局,能为不同section设置不同布局,还有拖动cell...

访问官网 →

ZLCollectionView: 为复杂页面布局打造的CollectionView

一、项目简介

ZLCollectionView是一个为应对类似淘宝首页、京东首页和国美首页等复杂布局而开发的CollectionView。它基于UICollectionView实现,具备多种布局方式,如标签布局、列布局、百分比布局、定位布局、填充式布局、瀑布流布局等。支持纵向和横向布局,还能够依据不同的section设置不同的布局,在功能上支持拖动cell、头部悬浮、设置section背景色、自定义section背景view并向其传递自定义方法等,功能强大甚至超过了Android的recyclerview,实现了电影选座等高难度布局。

二、核心技术

  1. 基于UICollectionView构建:利用UICollectionView的基础架构,在此之上拓展出多种布局和功能特性。
  2. 多样化布局支持 -标签布局(LabelLayout):适用于类似标签形式的布局展示。 -列布局(ColumnLayout):可设置列数,用于如表格形式等布局。 -百分比布局(PercentLayout):能指定每个item占该行的比例。 -定位布局(AbsoluteLayout):可以精确地指定每个item的frame。 -填充式布局(FillLayout)等多种布局方式。 -瀑布流布局:并且在1.4.9版本中还增加了瀑布流排列方式的字段。
  3. 不同section的差异化设置:可针对不同的section设置不同的布局方式,这通过相关的代理方法实现,如指定是什么布局的代理方法-(ZLLayoutType)collectionView:(UICollectionView)collectionViewlayout:(UICollectionViewFlowLayout)collectionViewLayouttypeOfLayout:(NSInteger)section;等多种代理方法。
  4. 丰富的自定义功能 -支持自定义section背景view:通过代理方法-(NSString)collectionView:(UICollectionView)collectionViewlayout:(UICollectionViewFlowLayout)collectionViewLayoutregisterBackView:(NSInteger)section;实现。 -向自定义背景view传递自定义方法:借助-(ZLBaseEventModel)collectionView:(UICollectionView)collectionViewlayout:(UICollectionViewFlowLayout)collectionViewLayoutbackgroundViewMethodForSection:(NSInteger)section;等代理方法。 -支持设置section背景色、拖动cell、头部悬浮等功能。

三、项目总结

ZLCollectionView是一个功能丰富且强大的布局工具,对于开发iOS应用中复杂页面布局有着很大的帮助。它不断更新迭代,修复bug并且增加新功能。欢迎各位粉丝在评论区留言分享自己的使用经验或者对这个项目的看法,大家共同探讨。

项目地址

GitHub链接直达