如何让点击按钮后的页面过渡

How to make the page transition after clicking the button

我正在开发一个应用程序来记录 children 读过的书。所以我想知道如何在点击“保存”按钮后让页面转换回菜单页面。我还想发出显示“数据已保存!”的警报。以下是我的代码。

@IBOutlet weak var newBookSaveButton: UIButton!

    @IBAction func newBookTapped(_ sender: Any) {
        guard let uid = Auth.auth().currentUser?.uid,
                      let data = bookData() else {
                          return
                      }
                db.collection("new reading").document(uid).setData(data)
            }
            
        
            func bookData() -> [String: Any]? {
                guard let title = bookTitleTextField.text,
                      let author = bookAuthorTextField.text,
                      let summary = bookSummaryTextField.text else {
                          return nil
                      }
                let data: [String: Any] = [
                    "bookTitle": title,
                    "bookAuthor": author,
                    "bookSummary": summary
                ]
                return data
        
                self.transitionToMenu()
            }
    func transitionToMenu() {
       
        let MenuViewController = storyboard?.instantiateViewController(withIdentifier: Constants.Storyboard.MenuViewController) as? MenuViewController
        
        view.window?.rootViewController=MenuViewController
        view.window?.makeKeyAndVisible()
    }
}

使用此代码,我仍然无法转换回菜单页面。非常感谢您的帮助。

你可以使用这个功能:

func transitionToMenu() {
    let alert = UIAlertController(title: nil, message: "Data has been saved!", preferredStyle: .alert)
    alert.view.alpha = 0.5
    alert.view.layer.cornerRadius = 15
    self.present(alert, animated: true)
    DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 2) {
        alert.dismiss(animated: true)
        if let navController = self.navigationController {
            navController.popViewController(animated: true)
        } else {
            self.dismiss(animated: true, completion: {})
        }
    }
}