SwiftUI-Xcode-VStack无法推断类型



我正试图在Xcode中创建一个简单的master/detail应用程序。

我希望详细视图是

struct EditingView: View
{
var body: some View {
var mainVertical: VStack = VStack() //error here
{
var previewArea: HStack = HStack()
{
var editorButton: Button = Button()
//the same with return editorButton
// I have to add other controls, like a WKWebView
}
return previewArea
//this is a simple version, layout will have other stacks with controls inside
}
return mainVertical
}
}

但我有

Generic parameter 'Content' could not be inferred

IDE提供给我修复,但如果我这样做,它会写一个我必须填充的泛型类型,但随后会出现其他错误,例如,如果我将AnyView放在TupleView中。

我希望它能推断出一切,它不能理解的错在哪里?

在SwiftUI中,您通常不需要引用控件。可以在视图中直接对其应用修改器。

这是首选方式:

struct ContentView: View {
var body: some View {
VStack {
HStack {
Button("Click me") {
// some action
}
}
}
.background(Color.red) // modify your `VStack`
}
}

或者,如果需要,您可以将控件提取为单独的变量:

struct ContentView: View {
var body: some View {
let hstack = HStack {
button
}
return VStack {
hstack
}
}
var button: some View {
Button("Click me") {
// some action
}
}
}

但最后我绝对建议你阅读Apple SwiftUI教程

相关内容

  • 没有找到相关文章

最新更新