collection-view-layouts 0.2.2

collection-view-layouts 0.2.2

JowKameMykola VoroninRadisalv Crechet维护。



  • 作者
  • sergey.afanasiev

Build Status codecov

关于

Collection View Layouts是一组针对iOS的自定义布局,模仿移动应用的通用数据网格方法。

布局类型

标签 Pinterest 500px Instagram
Flipboard Facebook Flickr

概述

  • 7种流行的iOS集合视图布局
  • 标签和Flipboard布局支持左右内容对齐
  • 500px有自定义单元格布局配置
  • Instagram布局有三种模式(默认网格模式、一个预览单元格、常规预览单元格)
  • 每种布局都可以分别通过内容和单元格填充进行配置
  • 测试覆盖率超过90%

安装

CocoaPods

通过 CocoaPods 可访问 Collection View Layouts。要安装它,只需将以下行(根据您的需求)添加到您的 Podfile

pod 'collection-view-layouts/Core'
pod 'collection-view-layouts/TagsLayout'
pod 'collection-view-layouts/PinterestLayout'
pod 'collection-view-layouts/Px500Layout'
pod 'collection-view-layouts/InstagramLayout'
pod 'collection-view-layouts/FlipboardLayout'
pod 'collection-view-layouts/FacebookLayout'
pod 'collection-view-layouts/FlickrLayout'

需求

iOS: 11.0+
Swift: 5.0
CocoaPods: 用于 iOS

示例

要运行示例项目,首先克隆存储库,然后从“Example”目录运行 pod install。

使用说明

自定义布局的配置相当简单

var layout: BaseLayout = TagsLayout()

layout.delegate = self
layout.delegate = ItemsPadding(horizontal: 10, vertical: 10)
layout.cellsPadding = ItemsPadding(horizontal: 8, vertical: 8)

collectionView.collectionViewLayout = layout
collectionView.reloadData()

此外,您还需要实现 LayoutDelegate 协议

public protocol LayoutDelegate: class {
    func cellSize(indexPath: IndexPath) -> CGSize
}

func cellSize(indexPath: IndexPath) -> CGSize {
    return cellsSizes[indexPath.row]
}

作者

谢尔盖·阿法纳谢夫

寻求帮助

[email protected]

授权

集合视图布局允许根据Apache 2.0授权使用。


RubyGarage Logo

RubyGarage是一家位于东欧的领先的软件开发和咨询公司。我们的主要专长包括Ruby和Ruby on Rails,但我们成功地利用其他技术为客户创造最佳结果。请参阅我们的作品集,了解更多令人兴奋的工作!