用条件故事板进行切换
我是新的故事板和xcode(使用4.4)
我想要实现一个login条件,如果完成 – segue会工作。 否则,用户应该保持相同的观点。
我创build了2个UIView:ViewController和Bar Controller。
我也创build了从ViewController到Bar控制器的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:@""]; }
当我debugging代码 – 我看到,如果电子邮件和密码的情况下跳到其他的不等于O,但仍然发生(转换到新视图)。
我怎样才能防止用户转移到新视图?
顺便说一句,如果我删除if else条件 – 用户被自动转移到下一个视图。 在我看来,当我从一个视图画到另一个视图时,它被configuration在某个地方。
删除你的if
和[self perform...]
之间的空行
另外,你可能要考虑把你的if-else
语句放在花括号里,以防止这个问题再次发生:
if ([self.email isEqualToString:@"O"] && [self.password isEqualToString:@"O"]){ [self performSegueWithIdentifier:@"LoginSegue" sender:sender]; }else{ [passwordText setText:@""]; }
如果这不能解决问题,那么一定要将segue连接到两个控制器,而不是直接连接到一个button。
- Swift World:设计模式-工厂方法
- 无法在UITableView中selectCell对于UITableViewCellAccessoryCheckmark
- 后退button奇怪地消失在UINavigationController但继续工作
- 使用我的ios App iOS 9 Swift 2.2中的路线打开Apple Maps应用程序
- 在两个或多个iPhone应用程序之间共享数据
- 使用ios 11 beta 7的UIKeyboardWillShowNotification问题
- 成为中级iOS开发人员的提示
- 屏蔽除UIView之外的所有视图
- 为什么我的应用程序在App Switcher中显示为空白屏幕?