下面的代碼工作,但現在當我按下登錄按鈕,它會自動訪問我到我的下一個視圖控制器,但我不想這樣。我想保持註銷狀態,直到輸入正確的信息。我相信這個問題是當我在登錄代碼之前輸入故事板和Appdelegate信息的時候。任何關於我如何重組的建議?或更濃縮的代碼?一個成功的登錄
@IBAction func loginButton(_ sender: Any) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let tabBarController = storyboard.instantiateViewController(withIdentifier: "TabBarController") as! UITabBarController
let appDelegate = UIApplication.shared.delegate as! AppDelegate
appDelegate.window?.rootViewController = tabBarController
let loginName = userNameField.text;
let loginLast = userLastField.text;
let loginNameStored = UserDefaults.standard.string(forKey: "loginName");
let loginLastStored = UserDefaults.standard.string(forKey: "loginLast");
if(loginNameStored == loginName)
{
if(loginLastStored == loginLast)
{
//login is successful
UserDefaults.standard.set(true, forKey:"isUserLoggedIn");
UserDefaults.standard.synchronize();
self.dismiss(animated: true, completion:nil)
}
}
在這段代碼中,首先你要設置rootViewController並檢查isUserLoggedIn,對不對? 。其實我不明白你真正想要什麼,你可以解釋它 –
@MidhunKMohan想法是,一旦用戶成功地輸入了他們的用戶名和密碼,他們點擊登錄按鈕,它會帶他們到一個視圖,有一個標籤控制器。我的問題是,當我點擊登錄按鈕時,它會自動將我發送到下一個視圖,而無需輸入任何登錄信息。 – William