【发布时间】:2022-12-03 10:50:16
【问题描述】:
目前,我正在快速学习这门语言,并且我是从 Java/C++ 的角度来看它的。我正在尝试为我玩的名为 World War II Online 的游戏制作一个应用程序。但是,我无法理解为什么在尝试在切换中编码以记住密码时出现绑定错误。以下是我的应用程序登录页面的代码。
struct ContentView: View {
@State private var empty_field = ""
@State private var passwordState = false
let userfieldTitle : String = "username"
let passwordFieldTitle : String = "password"
let landingPageTitle = "World War II Online"
let toggleName = "remember password"
var body: some View
{
Text(landingPageTitle).font(.largeTitle)
Section {
Form{
VStack
{
TextField(userfieldTitle,text : $empty_field)
TextField(passwordFieldTitle,text : $empty_field)
Toggle(toggleName, isOn: $passwordState){
print("hello world")
}
}
.padding()
}
}
}
我收到错误:
无法将“绑定”类型的值转换为预期的参数类型“KeyPath<(() -> ()).Element, Binding>”
我真的很不了解绑定和属性。有什么我一直对代码视而不见的东西吗?
【问题讨论】:
-
你的音节太多了;这个词实际上是“三元”。
== true对于布尔值来说总是多余的。 -
即便如此,我还是遇到了同样的错误。我更新了我的代码