预览中的 SwiftUI 视图参数缺少调用中参数 'content' 的参数
SwiftUI view argument in preview missing argument for parameter 'content' in call
您好试图创建一个仅具有背景渐变的可重用组件,但在预览中出现错误
这是组件
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")
}
}
}
但是预览是这样的
视图生成器实际上是函数生成视图的包装器,所以这里是固定变体:
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
您好试图创建一个仅具有背景渐变的可重用组件,但在预览中出现错误
这是组件
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")
}
}
}
但是预览是这样的
视图生成器实际上是函数生成视图的包装器,所以这里是固定变体:
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