SCCollectionViewController 1.0.1

SCCollectionViewController 1.0.1

测试已测试
Lang语言 SwiftSwift
许可证 MIT
Released最新版本2015年5月
SPM支持Swift包管理器(SPM)

Benoit Layer 维护。



此框架提供了一种子类,用于展示支持以下功能的 UICollectionView:生长的头部(缩放效果)、全景效果,以及当您滚动 через UICollectionView 时渐显渐隐的导航栏背景。

要求

  • iOS 7.0+ (不建议在 iOS 8 之前使用 CocoaPods,因为 CocoaPods 强制 Swift 框架具有 iOS8 部署目标)
  • Xcode 6.3 (使用 Swift 1.2)

安装

手动安装

  • 只需将 SCCollectionViewController.xcodeproj 添加到您的工作区,并将其框架输出作为您项目的依赖项添加(请参阅样例项目)。
  • 您也可以构建框架,并将其直接链接到您的目标。

使用方法

CollectionView 排列设置

您可以通过自定义一些属性来更改控制器的外观。

  • cellMargin: CGFloat = 5 两个方面之间的间距,以及左和右的边距(左右边距)。
  • cellHeight: CGFloat = 120 对应每个单元格的高度。
  • headerBaseHeight: CGFloat = 170 头部缩放时的高度。

生长的头部和全景效果

首先,您MUST 子类 SCCollectionViewController,并提供以下方法的自己的实现:

func configureCell(cell: UICollectionViewCell, indexPath: NSIndexPath)
func configureHeader(header: UICollectionReusableView)
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int

您也可以覆盖 SCCollectionViewController 中声明了 final 的任何 delegate 方法。

将此子类与您的视图和模型结合,你就可以自定义单元格和头部,就像您喜欢的那样。

您将自动获得生长的头部和全景效果。

渐隐导航栏

对于渐隐效果,您需要在一个导航控制器中推送 SCCollectionViewController。您的导航控制器应该有一个类型为 SCNavigationBar 的导航栏,因为它覆盖了 UINavigationBar 的 alpha 属性(仅使背景渐显和渐隐,而不影响导航项)。如果您不使用 SCNavigationBar,则整个栏将渐隐,同样,导航项也会渐隐。

您可以直接在您的nib或storyboard文件中设置导航栏的类,或者在使用init(navigationBarClass: AnyClass?, toolbarClass: AnyClass?)创建您的UINavigationController时进行设置。

限制

目前,SCCollectionViewController是为UICollectionView中的一个单独分区而设计的。

更新日志

1.0.1

为了在iOS 7.0+上运行,我们使用了CALayer上的mask属性,而不是UIView的mnew maskView属性。

1.0.0

初始版本

创建者

许可证

SCCollectionViewController在MIT许可证下发布。详情请见LICENSE文件。