如何在SwiftUI应用程序中返回登录视图
我正在使用SwiftUI开发一个iOS应用程序,第一个视图是一个登录视图,您必须输入密码才能继续进入下一个屏幕。 一切正常,但我希望每次使用设备中的另一个应用程序后返回此应用程序时,我的应用程序都返回登录视图。 以下是我的一个例子:如何在SwiftUI应用程序中返回登录视图,swiftui,loginview,Swiftui,Loginview,我正在使用SwiftUI开发一个iOS应用程序,第一个视图是一个登录视图,您必须输入密码才能继续进入下一个屏幕。 一切正常,但我希望每次使用设备中的另一个应用程序后返回此应用程序时,我的应用程序都返回登录视图。 以下是我的一个例子: struct ContentView: View { @State private var showLogin = true @State private var loginPassword = "" let correctPasswor
struct ContentView: View {
@State private var showLogin = true
@State private var loginPassword = ""
let correctPassword = "1234"
var body: some View {
Group{
if showLogin{
VStack{
TextField("Your password", text: self.$loginPassword)
Divider()
Button("Login"){
if self.loginPassword == self.correctPassword {
self.showLogin.toggle()
}else {
self.loginPassword = ""
}
}
.padding(8)
.background(Color.green)
.foregroundColor(.white)
.cornerRadius(20)
}
} else {
Text("Hello world")
}
}
}
}
以下是可能的方法(基于应用程序通知):
非常感谢这正是我想要的
struct ContentView: View {
@State private var showLogin = true
@State private var loginPassword = ""
let correctPassword = "1234"
let deactivatePublisher = NotificationCenter.default.publisher(for:
UIApplication.didEnterBackgroundNotification)
var body: some View {
Group{
if showLogin{
VStack{
TextField("Your password", text: self.$loginPassword)
Divider()
Button("Login"){
if self.loginPassword == self.correctPassword {
self.showLogin.toggle()
}else {
self.loginPassword = ""
}
}
.padding(8)
.background(Color.green)
.foregroundColor(.white)
.cornerRadius(20)
}
} else {
Text("Hello world")
}
}
.onReceive(deactivatePublisher) { _ in
self.loginPassword = ""
self.showLogin = true
}
}
}