TextField ViewModifier 不符合 ViewModifier?

zum*_*zum 3 swift swiftui viewmodifier

我的观点之一有这段代码:

struct TextFieldClearButton: ViewModifier {

    @Binding var text: String

    func body(content: Content) -> some View {

        HStack {

            content

            if !text.isEmpty {
                Button(
                    action: { self.text = "" },
                    label: {
                        Image(systemName: "delete.left")
                            .foregroundColor(Color(UIColor.opaqueSeparator))
                    }
                )
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到两个错误:

  1. Type 'TextFieldClearButton' does not conform to protocol 'ViewModifier'
  2. Static method 'buildBlock' requires that 'Content' conform to 'View'

我怎样才能摆脱这些错误并使这个修改器编译?

在此输入图像描述

看来我ViewModifier根本用不了啊 也添加超级简单的大小写错误??:

在此输入图像描述

lor*_*sum 9

您的项目中可能有一个struct/class名为Content

如果你有 Xcode 的标准深色主题,“mint”/“greenish”意味着它是“Project”定义的。

在此输入图像描述

当您使用 Apple 的定义时,它是粉红色/紫色ViewModifier,如屏幕截图中的View、 、 和String

在此输入图像描述

搜索struct Contentclass Contentenum Content等。在您的项目中,您将找到重复项,然后只需更改重复项的名称即可。

它也可以是通用的<Content: SomeProtocol><Content>typealias Content

您可以通过更具体的方式来确认重复项

在此输入图像描述