【发布时间】:2022-08-20 01:43:50
【问题描述】:
有一个代码,通过按下屏幕底部的“注册”按钮,应该会打开另一个窗口。但是由于某种原因,当您单击按钮时,不会发生任何操作。
单击按钮时,我需要切换视图。
import SwiftUI
import CoreData
struct LoginView: View {
@State private var email: String = \"Email\"
@State private var password: String = \"Password\"
@State private var showSignup: Bool = false
var body: some View {
ZStack {
VStack {
VStack(alignment: .leading) {
VStack {
LoginText
LoginForm
GradientButton(text: \"Login\")
.frame(maxWidth: .infinity, alignment: .leading)
ForgotPass(text: \"Forgor Password\")
.frame(maxWidth: .infinity, alignment: .leading)
}
}
.padding([.top, .horizontal], 40)
.frame(maxWidth: .infinity, alignment: .leading)
.offset(y: 104)
VStack {
Spacer()
Rectangle()
.frame(height: 1)
.foregroundColor(.secondary.opacity(0.4))
VStack {
Button( action: {
showSignup.toggle()
}, label: {
ForgotPass(text: \"Sign Up\")
})
}
}
}
.background(Color.white)
if showSignup {
SignupView()
}
}
}
-
当您初始化注册为 true 时,会发生什么?
-
这个对我有用。您确定您的其他视图没有与 SignupView 混淆吗?
-
什么是 LoginText 和 LoginForm ?似乎缺少一些()。还要检查这个post
-
@PtitXav 如果您手动将 false 更改为 true,那么一切正常。但是通过按钮和showSignup.toggle() 不行! Login Text 和 LoginForm 工作,它们是变量。他们一切都很好,没有错误。当我单击按钮时,showSignup.toggle() 不起作用。
-
@HunterLion 如果您启动预览并单击屏幕底部的注册,则没有任何反应,尽管应该出现另一个菜单。
标签: swift button swiftui swift3