當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。