[英]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.