Swiftui 关于Xcode 11的问题;INT不能转换为CGFloat?“;

Swiftui 关于Xcode 11的问题;INT不能转换为CGFloat?“;,swiftui,xcode11,Swiftui,Xcode11,请看下面我的代码。我尝试了一些方法,但似乎没有任何效果。我注意到的一件事是,如果我注释掉第28行,代码工作正常,但如果我保持第28行的原样,我会不断得到错误 我已尝试将其更改为: HStack(alignment:.center, spacing: CGFloat(50)) 但这也不起作用。请帮忙 提前感谢您抽出时间研究此问题 // // ContentView.swift // UdemyCourse //

请看下面我的代码。我尝试了一些方法,但似乎没有任何效果。我注意到的一件事是,如果我注释掉第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()
//    }
//}
          }
    }
}

您应该注意,Xcode会抱怨错误位置的错误,因此您得到的错误可能与实际错误无关


看看你的代码,似乎有几个错误。除非您为
TextField
ButtonView
编写了自己的组件(如果您这样做了,您应该在代码示例中包含这些组件),否则错误似乎与它们有关

首先是
文本字段
,它以最简单的形式采用以下参数:

TextField(<title: StringProtocol>, text: Binding<String>)
其次,没有名为
按钮视图
的组件,因此我假设您打算使用
按钮
。其参数为:

Button(action: () -> Void, label: () -> _)
因此,您应该将
按钮更新为:

TextField("Enter text", text: $text)
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\u预览应该在
ContentView
结构之外