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


Swift Never shadow(color:radius:x:y:)用法及代码示例


实例方法

shadow(color:radius:x:y:)

向该视图添加阴影。

声明

func shadow(
    color: Color = Color(.sRGBLinear, white: 0, opacity: 0.33),
    radius: CGFloat,
    x: CGFloat = 0,
    y: CGFloat = 0
) -> some View

返回值

向该视图添加阴影的视图。

参数

color

阴影的颜色。

radius

衡量模糊阴影的程度。较大的值会导致更多的模糊。

x

从视图水平偏移阴影的量。

y

从视图垂直偏移阴影的量。

详述

使用此修饰符在视图后面添加指定颜色的阴影。您可以使用xy 参数在水平和垂直维度上独立地从其视图中偏移阴影。您还可以使用radius 参数模糊阴影的边。使用零半径来创建清晰的阴影。较大的半径值会产生较柔和的阴影。

下面的示例创建了一个具有不同偏移和模糊的盒子网格。每个框显示其半径和偏移值以供参考。


struct Shadow: View {
    let steps = [0, 5, 10]


    var body: some View {
        VStack(spacing: 50) {
            ForEach(steps, id: \.self) { offset in
                HStack(spacing: 50) {
                    ForEach(steps, id: \.self) { radius in
                        Color.blue
                            .shadow(
                                color: .primary,
                                radius: CGFloat(radius),
                                x: CGFloat(offset), y: CGFloat(offset))
                            .overlay {
                                VStack {
                                    Text("\(radius)")
                                    Text("(\(offset), \(offset))")
                                }
                            }
                    }
                }
            }
        }
    }
}

上面的示例使用Color/primary 作为颜色以使阴影易于看到以进行说明。在实践中,您可能更喜欢更微妙的东西,例如 Color/gray-8j2b 。如果您不指定颜色,则该方法使用半透明黑色。

可用版本

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

相关用法


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