簡體   English   中英

條件情節提要的segue過渡

[英]segue transition with condition storyboard

我是Storyboard和Xcode的新手(使用4.4)

我想實現一個登錄條件,如果成功,segue將會起作用。 否則,用戶應停留在同一視圖上。

我創建了2個UIView:ViewController和Bar Controller。

我還創建了一個從ViewController到Bar Controller的segue,並將其標識符設置為loginSegue作為模態。

在LoginViewController.m中,我添加了以下內容:

- (IBAction)login:(id)sender {
    self.email = self.emailText.text;
    self.password = self.passwordText.text;
   if ([self.email isEqualToString:@"O"] && [self.password isEqualToString:@"O"])
       [self performSegueWithIdentifier:@"LoginSegue" sender:sender];
    else
        [passwordText setText:@""];   
}

當我調試代碼時-我看到在電子郵件和密碼不等於O的情況下,if跳到else,但是segue(轉換到新視圖)仍然會發生。

如何防止用戶轉移到新視圖?

順便說一句,如果我刪除了if else條件-用戶將自動轉移到下一個視圖。 在我看來,當我將segue從一種視圖拉到另一種視圖時,它是在某個位置配置的。

刪除if[self perform...]之間的空白行

此外,您可能需要考慮將if-else語句放在花括號中,以防止再次發生此問題:

if ([self.email isEqualToString:@"O"] && [self.password isEqualToString:@"O"]){
    [self performSegueWithIdentifier:@"LoginSegue" sender:sender];
}else{
    [passwordText setText:@""];
}

如果這不能解決問題,請確保將segue附加到兩個控制器,而不是直接附加到按鈕。

暫無
暫無

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

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