请在下面查看我的代码。我尝试了几件事,但似乎无济于事。我注意到的一件事是,如果我注释掉第28行,代码可以正常工作,但是如果我保持第28行不变,那么我会不断收到错误消息。
我尝试将其更改为:
HStack(alignment:.center, spacing: CGFloat(50))
但是这也不起作用。请帮忙 预先感谢您抽出宝贵的时间对此进行研究。
//
// ContentView.swift
// UdemyCourse
//
// Created by Karan Singh on 10/29/19.
// Copyright © 2019 Karan Singh. All rights reserved.
//
import SwiftUI
struct ContentView: View {
@State var text: String = ""
var body: some View {
VStack{
HStack(alignment:.center, spacing: CGFloat(50)) {
Image("Karan").resizable().frame(width: 100, height: 120, alignment: .center)
VStack{
Text(verbatim: "Karan Singh").font(.title).foregroundColor(.black).bold()
Text(verbatim: "Customer Success")
}
}
Divider()
TextField($text, placeholder: Text(verbatim: "Enter Text"))
ButtonView(title: "Login", clickAction: {
print("Click to Login")
})
//struct ContentView_Previews: PreviewProvider {
// static var previews: some View {
// ContentView()
// }
//}
}
}
}
答案 0 :(得分:0)
您应该注意,Xcode会抱怨错误位置的错误,因此您收到的错误可能与实际错误无关。
查看您的代码似乎有一些错误。除非您为TextField
和ButtonView
编写了自己的组件(如果已编写,则应在代码示例中包含它们),否则错误似乎就在于它们。
首先TextField
,它以最简单的形式采用以下参数:
TextField(<title: StringProtocol>, text: Binding<String>)
与您编写的内容不同(我也找不到与您提供的重载匹配的TextField
)。因此,您应该将TextField
更新为:
TextField("Enter text", text: $text)
第二,没有名为ButtonView
的组件,因此我认为您的意思是使用Button
。它的参数是:
Button(action: () -> Void, label: () -> _)
因此,您应该将Button
更新为:
Button(action: {
print("Click to login")
}) {
Text(verbatim: "Login")
}
如果我们将它们放在一起(将图像替换为名为image的系统,因为我没有您的照片),我们将得到以下内容,它们可以正确编译:
struct ContentView: View {
@State var text: String = ""
var body: some View {
VStack {
HStack(alignment: VerticalAlignment.center, spacing: 50) {
Image(systemName: "person.fill")
.resizable()
.frame(width: 100, height: 100, alignment: .center)
VStack {
Text(verbatim: "Karan Singh")
.font(.title)
.foregroundColor(.black)
.bold()
Text(verbatim: "Customer Success")
}
Divider()
TextField("Enter text", text: $text)
Button(action: {
print("Click to login")
}) {
Text(verbatim: "Login")
}
}
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
请注意:ContentView_Previews
应该在您的ContentView
结构之外。