struct ContentView: View {
var body: some View {
Print("Hello World")
}
}
每当我尝试在动作之外使用诸如print或if语句之类的东西(例如使用UserDefaults
保存另一个示例的设置)时,它都会给我“函数声明不透明的返回类型”,但其主体中没有可从中推断出基础类型的return语句。”
有了UIKit
,您在viewDidLoad()
中放入的任何东西都可以完美运行,那么viewDidLoad()
是否有类似SwiftUI
的东西?如果没有,我将如何执行这些操作(在您说出它们离开身体并将其放入ContentView
之前,这只会给我“期望的声明”错误)?
答案 0 :(得分:0)
如前所述,视图主体 必须 返回一个视图:
struct ContentView : View {
var body: some View {
return Text("Hello World")
}
}
此外,在定义主体时存在大量限制。
没有办法解决。您需要阅读文档,或者至少遵循Apple的这些教程,这些教程很好地结合在一起:
答案 1 :(得分:-3)
import SwiftUI
struct ContentView : View {
var body: some View {
var bodyView: some View {
Text("Hello World")
}
//Put your entire UI in the bodyView, between the bodyView and "return bodyView" you can put what you would as if it was a viewDidLoad() like in UIKit.
return bodyView
}
}
#if DEBUG
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
ContentView()
}
}
#endif