下面的代码可以在ios13中运行。
import SwiftUI
struct ContentView: View {
var body: some View {
LoginView()
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}但当我尝试使用ios14功能应用程序协议时,预览报告require the ContentView confirm to View错误。
import SwiftUI
@main
struct ContentView: App {
var body: some Scene {
WindowGroup {
LoginView()
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}发布于 2020-08-14 20:04:28
这是因为在您的新版本中,ContentView不再声明为View,而是声明为App (为避免混淆,我建议将其重命名为ContentApp )。
预览的签名是:
static var previews: some View这意味着它需要返回一些视图(而不是一些应用程序)。
在您的示例中,您可能希望在预览中显示LoginView:
struct LoginView_Previews: PreviewProvider {
static var previews: some View {
LoginView()
}
}或者如果你想展示ContentView
@main
struct ContentApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
struct ContentView: View {
var body: some View {
LoginView()
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}https://stackoverflow.com/questions/63412382
复制相似问题