как выйти из цикла и перейти в ContentView swiftUI
Экран подключения, регистрация и восстановление пароля. Я работаю над этим ссылочным проектом. Как я могу перейти к ContentView после входа в систему? Как мне выйти из цикла и перейти к ContentView? Буду рад, если поможете..
1 ответ
Вы можете использовать ZStack для наложения различных частей контента и условно выбрать, какие из них будут видны.
struct ContentView: View {
@State var isLoggedIn = false
var body: some View {
ZStack {
if self.isLoggedIn {
Text("You're In!")
} else {
LoginView(isLoggedIn: self.$isLoggedIn)
}
}
}
}
Где LoginView обновляет состояние, чтобы указать действительный логин.
struct LoginView: View {
@Binding var isLoggedIn: Bool
var body: some View {
Button("Log in") {
self.isLoggedIn = true
}
}
}
Поскольку SwiftUI представляет представления как функцию состояния, цикл для представления представления входа и последующего перехода к другому контенту не выполняется. Вместо этого описывается весь возможный контент, и каждый раз, когда @State изменяется, представления воссоздаются заново, чтобы соответствовать текущим значениям.