测试已测试 | ✗ |
Lang语言 | SwiftSwift |
许可 | MIT |
发布上次发布 | 2016年9月 |
SPM支持 SPM | ✗ |
由 Taiki Suzuki 维护。
SACollectionViewVerticalScalingFlowLayout 将缩放效果应用于出现或消失的单元格。此外,UIDynamics 的动画应用于每个单元格。
参考 ManiacDev.com。
https://maniacdev.com/2015/07/open-source-uicollectionview-layout-that-automatically-scales-images-scrolling-inout-of-view
要运行示例项目,请克隆仓库,然后首先在 Example 目录中运行 pod install
。
转到 Storyboard 或 Xib 的‘属性检查器’,然后在布局选项卡中将‘自定义’设置为布局。然后在类选项卡中将‘SACollectionViewVerticalScalingFlowLayout’设置为。
将以下代码写在 viewDidLoad 方法等。
collectionView.registerClass(SACollectionViewVerticalScalingCell.self, forCellWithReuseIdentifier:kCellIdentifier)
let layout = SACollectionViewVerticalScalingFlowLayout()
layout.scaleMode = .hard
layout.alphaMode = .easy
layout.scrollDirection = .Vertical
collectionView.collectionViewLayout = layout
如果您想使用水平模式。
layout.scrollDirection = .horizontal
您可以自定义出现或消失的单元格的缩放和透明度。
您可以通过设置 SACollectionViewVerticalScalingFlowLayout 的 scaleMode 属性的 ScaleModeType 来更改透明度,以设置缩放模式。(默认:.easy)
var scaleMode: SACollectionViewVerticalScalingFlowLayoutScaleMode
enum SACollectionViewVerticalScalingFlowLayoutScaleMode {
case none, easy, hard
}
您可以通过设置 SACollectionViewVerticalScalingFlowLayout 的 alphaMode 属性的 AlphaModeType 来更改透明度。(默认:.easy)
var alphaMode: SACollectionViewVerticalScalingFlowLayoutScaleMode
enum SACollectionViewVerticalScalingFlowLayoutAlphaMode {
case none, easy, hard
}
您像这样使用 containerView 而不是 contentView,然后您可以添加您想要的任何视图。
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(kCellIdentifier, forIndexPath: indexPath)
let imageView = UIImageView(frame: cell.bounds)
imageView.image = UIImage(named: "cat")
cell.containerView?.addSubview(imageView)
鈴木太基,[email protected]
SACollectionViewVerticalScalingFlowLayout遵从MIT许可协议。更多信息请参阅LICENSE文件。