嗨,試圖創建一個僅具有背景漸變的可重用組件,但在預覽中出現錯誤
這是組件
import SwiftUI
struct Patterns<Content: View>: View {
@ViewBuilder var content: Content
var body: some View {
ZStack {
LinearGradient(
gradient: Gradient(
colors: [Color.red, Color.blue]
), startPoint: .leading, endPoint: .trailing)
content
}
}
}
struct Patterns_Previews: PreviewProvider {
static var previews: some View {
Patterns {
Text("Hello")
}
}
}
但預覽看起來像這樣

uj5u.com熱心網友回復:
視圖構建器實際上是函式生成視圖的包裝器,因此這里是固定變體:
struct Patterns<Content: View>: View {
@ViewBuilder var content: () -> Content // << here !!
var body: some View {
ZStack {
LinearGradient(
gradient: Gradient(
colors: [Color.red, Color.blue]
), startPoint: .leading, endPoint: .trailing)
content() // << here !!
}
}
}
使用 Xcode 13.2 / iOS 15.2 測驗
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/401143.html
下一篇:Swift無法在范圍內找到“”
