簡體   English   中英

登錄后如何在 SwiftUI 中呈現新視圖

[英]How to present new view in SwiftUI after login

我需要知道誰使用 SwiftUI(遵循 MVVM 設計模式)呈現新視圖。

例如,一旦用戶輸入憑據進行登錄,按下“登錄”按鈕應該會將他們帶到應用程序的主頁,而無法返回登錄頁面。

我一直在查看來自 Apple 的文檔以及 Stackoverflow 中的其他問題,但它們似乎都在使用導航視圖(即頂部有一個導航欄,允許用戶返回上一個視圖)。

下面是我將如何使用 UIKit 完成此操作的代碼,以及一個直觀地表示我想要完成的圖像。

let vc = MainMenuController()

vc.modalPresentationStyle =.fullScreen

self.present(vc, animated: true, completion: nil);

期望結果的示例圖像

這就是我在ContentView.swift的代碼中實現它的方式:

@State var loggedIn: Bool = false

var body: some View {
  VStack {
    if loggedIn {
      ShowSomeTabView()
    } else {
      ShowLoginScreen()
    }
  }.onAppear {
    self.checkAuthorized()
  }
}

private func checkAuthorized() {
  if loggedIn() {
    self.loggedIn = true
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM