Dej*_*ell 1 iphone xcode objective-c ios uistoryboard
我是故事板和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:@""];
}
Run Code Online (Sandbox Code Playgroud)
当我调试代码时 - 我看到如果电子邮件和密码不等于O,则跳过其他,但是仍然会发生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:@""];
}
Run Code Online (Sandbox Code Playgroud)
如果这不能解决问题,那么一定要确定segue是连接到两个控制器而不是直接连接到按钮.
| 归档时间: |
|
| 查看次数: |
1880 次 |
| 最近记录: |