CollectionViewPagingLayout
@MainActor
open class CollectionViewPagingLayout : UICollectionViewFlowLayout
支持按页横向滚动的 UICollectionViewLayout,可切换不同类型的滚动动画。
item 的大小和布局仅支持通过 UICollectionViewFlowLayout 的 property 系列属性修改,也即每个 item 都应相等。对于通过 delegate 方式返回各不相同的 itemSize、sectionInset 的场景是不支持的。
-
当前布局样式
Declaration
Swift
@MainActor open private(set) var style: CollectionViewPagingLayoutStyle { get }
-
规定超过这个滚动速度就强制翻页,从而使翻页更容易触发。默认为 0.4
Declaration
Swift
@MainActor open var velocityForEnsurePageDown: CGFloat
-
是否支持一次滑动可以滚动多个 item,默认为 YES
Declaration
Swift
@MainActor open var allowsMultipleItemScroll: Bool
-
规定了当支持一次滑动允许滚动多个 item 的时候,滑动速度要达到多少才会滚动多个 item,默认为 2.5
仅当 allowsMultipleItemScroll 为 YES 时生效
Declaration
Swift
@MainActor open var multipleItemScrollVelocityLimit: CGFloat
-
当前 cell 的百分之多少滚过临界点时就会触发滚到下一张的动作,默认为 .666,也即超过 2/3 即会滚到下一张。 对应地,触发滚到上一张的临界点将会被设置为 (1 - pagingThreshold)
Declaration
Swift
@MainActor open var pagingThreshold: CGFloat
-
中间那张卡片基于初始大小的缩放倍数,默认为 1.0
Declaration
Swift
@MainActor open var maximumScale: CGFloat
-
除了中间之外的其他卡片基于初始大小的缩放倍数,默认为 0.94
Declaration
Swift
@MainActor open var minimumScale: CGFloat
-
Undocumented
Declaration
Swift
@MainActor public init(style: CollectionViewPagingLayoutStyle)
-
Undocumented
Declaration
Swift
@MainActor public required init?(coder: NSCoder)
-
Undocumented
Declaration
Swift
@MainActor override open func prepare()
-
Undocumented
Declaration
Swift
@MainActor override open func shouldInvalidateLayout(forBoundsChange newBounds: CGRect) -> Bool
-
Undocumented
Declaration
Swift
@MainActor override open func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]?
-
Undocumented
Declaration
Swift
@MainActor override open func targetContentOffset(forProposedContentOffset proposedContentOffset: CGPoint, withScrollingVelocity velocity: CGPoint) -> CGPoint