SwiftUI View 入门代码在添加到现有项目时抱怨“从非协议类型“View”继承”

Sen*_*ful 4 xcode ios swift swiftui

我有一个现有的 Xcode 项目。我需要创建一个新视图。我打算使用 File > New > File... > View,但后来我注意到还有另一个选项SwiftUI View。所以我决定试一试。我继续选择了 SwiftUI View。

它创建了以下启动代码:

import SwiftUI

struct FooBar: View {
    var body: some View {
        Text("Hello, World!")
    }
}

struct FooBar_Previews: PreviewProvider {
    static var previews: some View {
        FooBar()
    }
}
Run Code Online (Sandbox Code Playgroud)

它有以下编译器错误:

在此处输入图片说明

我尝试清理,并选择 iPhone 11 Pro 模拟器作为目标目标,但它仍然有相同的编译器错误。

对于搜索能力,以下是所有错误:

  • 从非协议类型“View”(又名“UIView”)继承
  • 函数声明了一个不透明的返回类型,但它的主体中没有返回语句来推断底层类型
  • 无法将“文本”类型的返回表达式转换为“某些视图”类型的返回类型
  • 类型 'FooBar_Previews' 不符合协议 'PreviewProvider'
  • 函数声明了一个不透明的返回类型,但它的主体中没有返回语句来推断底层类型
  • 无法将“FooBar”类型的返回表达式转换为“some View”类型

我在 macOS Catalina,Xcode 11.2.1,部署目标是 iOS 13.0。

我究竟做错了什么?

E.C*_*oms 9

在我们看来,是有typealias View = UIView一些地方乱的ViewUIView