IGListKit 5.0.0

IGListKit 5.0.0

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最后发布2024年6月

Ryan NystromJesse SquiresJeremy LawrenceZhisheng HuangBenny WongTim Oliver 维护。



IGListKit 5.0.0

Build Status Coverage Status Pods Version Platforms Carthage Compatible


为构建快速灵活列表而设计的数据驱动 UICollectionView 框架。

主要功能
🙅 永远不再调用 performBatchUpdates(_:, completion:)reloadData()
🏠 具有可重复使用的单元格和组件的更好架构
🔠 创建包含多种数据类型的集合
🔑 解耦的 diff 算法
完全单元测试
🔍 为您的模型自定义 diff 行为
📱 核心是简洁的 UICollectionView
🚀 可扩展的 API
🐦 使用 Objective-C 编写,并完全支持 Swift 集成

IGListKit 是由 Instagram 工程师 构建和维护的。我们在 Instagram 应用中使用开源版本的 master 分支。❤️Instagram engineering

要求

  • Xcode 9.0+
  • iOS 9.0+
  • tvOS 9.0+
  • macOS 10.11+ (仅限 diff 算法组件)
  • 与 Swift 3.0+ 兼容

安装

CocoaPods

首选的安装方法是使用 CocoaPods。请将以下内容添加到您的 Podfile

pod 'IGListKit', '~> 4.0.0'

Carthage

针对 Carthage 的用法,请在您的 Cartfile 中添加以下内容

github "Instagram/IGListKit" ~> 4.0.0

对于高级用法,请参阅我们的 安装指南

入门指南

$ git clone https://github.com/Instagram/IGListKit.git
$ cd IGListKit/
$ ./scripts/setup.sh

文档

您可以在 这里 找到文档。文档是用 jazzy 生成的,并在 GitHub-Pages 上托管。

要重新生成文档,从仓库的根目录运行 ./scripts/build_docs.sh

愿景

有关 IGListKit 的长期目标和“愿景”,请参阅我们的 愿景文档

贡献

请参阅CONTRIBUTING文件了解如何贡献力量。在Instagram,我们每天同步IGListKit的开源版本,所以我们总是测试最新的更改。但这需要所有更改都必须经过彻底测试,并遵循我们的风格指南。

我们有一系列入门任务,非常适合初学者加入并开始贡献力量。

许可证

IGListKit遵循MIT许可证

位于/Examples/目录的文件遵循每个文件中指定的单独许可证。文档遵循CC-BY-4.0许可。