当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Swift Optional alignmentGuide(_:computeValue:)用法及代码示例


用法一

实例方法

alignmentGuide(_:computeValue:)

设置视图的垂直对齐方式。

声明

func alignmentGuide(
    _ g: VerticalAlignment,
    computeValue: @escaping (ViewDimensions) -> CGFloat
) -> some View

返回值

根据方法的闭包中执行的计算,相对于其垂直对齐方式修改的视图。

参数

g

偏移量的基础VerticalAlignment 值。

computeValue

返回偏移值以应用于此视图的闭包。

详述

使用 alignmentGuide(_:computeValue:) 计算特定偏移量,以重新定位彼此相关的视图。您可以返回一个常量,也可以使用闭包的ViewDimensions 参数来计算返回值。

在下面的示例中,天气表情符号从 HStack 的垂直中心偏移 20 个点。


VStack {
    Text("Today's Weather")
        .font(.title)
        .border(.gray)


    HStack {
        Text("🌧")
            .alignmentGuide(VerticalAlignment.center) { _ in -20 }
            .border(.gray)
        Text("Rain & Thunderstorms")
            .border(.gray)
        Text("⛈")
            .alignmentGuide(VerticalAlignment.center) { _ in 20 }
            .border(.gray)
    }
}

更改一个视图的对齐方式可能会对周围的视图产生影响。这里堆栈内的偏移值及其包含的视图是它们的绝对偏移量之差。

可用版本

iOS 13.0+, iPadOS 13.0+, macOS 10.15+, Mac Catalyst 13.0+, tvOS 13.0+, watchOS 6.0+

用法二

实例方法

alignmentGuide(_:computeValue:)

设置视图的水平对齐方式。

声明

func alignmentGuide(
    _ g: HorizontalAlignment,
    computeValue: @escaping (ViewDimensions) -> CGFloat
) -> some View

返回值

根据方法闭包中执行的计算,相对于其水平对齐方式修改的视图。

参数

g

偏移量的基础HorizontalAlignment 值。

computeValue

返回偏移值以应用于此视图的闭包。

详述

使用 alignmentGuide(_:computeValue:) 计算特定偏移量,以重新定位彼此相关的视图。您可以返回一个常量,也可以使用闭包的ViewDimensions 参数来计算返回值。

在下面的示例中,HStack 向中心右侧偏移 50 个点的常量:


VStack {
    Text("Today's Weather")
        .font(.title)
        .border(.gray)
    HStack {
        Text("🌧")
        Text("Rain & Thunderstorms")
        Text("⛈")
    }
    .alignmentGuide(HorizontalAlignment.center) { _ in  50 }
    .border(.gray)
}
.border(.gray)

更改一个视图的对齐方式可能会对周围的视图产生影响。这里堆栈内的偏移值及其包含的视图是它们的绝对偏移量之差。

可用版本

iOS 13.0+, iPadOS 13.0+, macOS 10.15+, Mac Catalyst 13.0+, tvOS 13.0+, watchOS 6.0+

相关用法


注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Optional alignmentGuide(_:computeValue:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。