【发布时间】:2019-07-22 16:16:01
【问题描述】:
我想在登录成功时向用户显示另一个视图,否则留在那个视图上。我已经通过执行 segue 来使用 UIKit 做到这一点。 SwiftUI 中有这样的替代方案吗?
NavigationButton 解决方案不起作用,因为我需要在转换到另一个视图之前验证用户输入。
Button(action: {
let authService = AuthorizationService()
let result = authService.isAuthorized(username: self.username, password: self.password)
if(result == true) {
print("Login successful.")
// TODO: ADD LOGIC
*** HERE I WANT TO PERFORM THE SEGUE ***
presentation(MainView)
} else {
print("Login failed.")
}
}) {
Text("Login")
}
【问题讨论】:
-
我已经发布了一个answer here,可以方便地使用
NavigationView和NavigationLink。 -
签出 SwiftUI 导航库 github.com/canopas/UIPilot 以便于导航。