跳转到内容

AnyScrollTargetBehavior

一种类型擦除的滚动目标行为。

TIP

iOS 18.0+ iPadOS 18.0+ Mac Catalyst 18.0+ macOS 15.0+ tvOS 18.0+ visionOS 2.0+ watchOS 11.0+

swift
@frozen
struct AnyScrollTargetBehavior

概述

将此提供给 scrollTargetBehavior(_:) 修饰符。当基础行为发生变化时,应用此行为的滚动视图将会更新。

使用此方法在运行时动态控制滚动目标行为。例如,您可以在紧凑尺寸类别中提供分页行为,而在其他情况下提供视图对齐行为。

swift
@Environment(\.horizontalSizeClass) var sizeClass


var body: some View {
    ScrollView { ... }
        .scrollTargetBehavior(scrollTargetBehavior)
}


 var scrollTargetBehavior: some ScrollTargetBehavior {
    sizeClass == .compact
        ? AnyScrollTargetBehavior(.paging)
        : AnyScrollTargetBehavior(.viewAligned)
}

初始化器

init(_:)

创建一个新的类型擦除滚动目标行为。

swift
init(_ base: some ScrollTargetBehavior)

实例属性

base

类型擦除的滚动目标行为。

swift
var base: any ScrollTargetBehavior

贡献者

The avatar of contributor named as wangqiyangX wangqiyangX

页面历史

基于 MIT 许可发布