LNICoverFlowLayout
仅 Swift 编写的 YRCoverFlowLayout 实现。也支持 CocoaPods。支持 Swift 5。要与 Swift 3 一起使用,请选择 swift3 分支。
说明
此自定义布局为 UICollectionView 提供了封面流效果。该项目是将 YRCoverFlowLayout 端口移植到 Swift,并添加了对 CocoaPods 的支持。
来自 YRCoverFlowLayout 的描述:您不需要担心项目(单元格)的位置、它们之间的空间等,因为 YRCoverFlowLayout 已经处理好了!您只需像往常一样设计您的单元格,并在数据源方法中返回它们,YRCoverFlowLayout 处理其余部分。
示例
安装
- 将以下行添加到 Podfile 中:
pod 'LNICoverFlowLayout'
并运行pod install
- 在您的集合视图中设置自定义布局类为LNICoverFlowLayout。请确保您也将模块更改为LNICoverFlowLayout。
- 从封面流布局添加一个输出到您的UICollectionView dataSource类中。您可以使用输出自定义封面流布局,如下所示。
- 在集合视图中设计您的单元格。
- 在dataSource方法中返回您的单元格。
- 滚动并享受。
查看内置示例以获取更多信息。
自定义
这里有4个可自定义的属性。
物品的最大旋转角度。默认为45度。这意味着屏幕左侧的物品将绕y轴旋转45度,而屏幕右侧的物品将绕y轴旋转-45度。在Swift实现中,此范围介于-360到360之间。
public var maxCoverDegree:CGFloat
此属性表示相邻物品与当前显示项目之间的相对位置。默认为1/4。这意味着左侧的物品将覆盖当前显示项目1/4的面积,来自右侧的物品也将覆盖当前物品1/4的面积。值应在0..1范围内。在Swift实现中,该范围受限制。
public var coverDensity:CGFloat
可应用于单个项目的最小不透明度。默认为1.0(alpha 100%)。在Swift实现中,该范围受限制。
public var minCoverOpacity:CGFloat
可应用于单个项目的最小缩放。默认为1.0(无缩放)。
public var minCoverScale:CGFloat
如果您在运行时更改这些值,请不要忘记调用collectionView.reloadData()
注意事项
目前仅支持水平滚动方向。在未来的版本中,将添加垂直滚动。
关键词
封面流,自定义布局,收集视图,swift
版本
v2.0.0