web-dev-qa-db-ja.com

SwiftUIでグラデーションで図形を塗りつぶす方法

swiftUIでLinearGradientをシェイプ(たとえばRectangle)justに渡すにはどうすればよいですか?

Rectangle().frame(width: UIScreen.main.bounds.width, height: 200)
3
Sajad Beheshti
Rectangle().frame(width: UIScreen.main.bounds.width, height: 200) // You original code

.overlay(
    LinearGradient(gradient: Gradient(colors: [.red, .purple]), startPoint: .top, endPoint: .bottom))
)

ご了承ください:

ビューにオーバーレイを適用すると、元のビューは引き続き結果のビューのレイアウト特性を提供します。

0

ベータ6以降、最初にforgroundColorをクリアするように設定する必要があります。

Rectangle()
    .foregroundColor(.clear)
    .background(LinearGradient(gradient:  Gradient(colors: [Color("gradient1"), Color("gradient2")]), startPoint: .top, endPoint: .bottom))
0
Shane Miller