BOOL loginStatus
ログインフローで使用するものがあります。
コード
- (IBAction)login:(id)sender {
if ([self credentialsValidated]) {
[self performSegueWithIdentifier:@"showLogin" sender:self];
}else {
NSLog(@"not valid");
}
}
- (BOOL)credentialsValidated {
[[API sharedInstance] loginCommand:[NSMutableDictionary dictionaryWithObjectsAndKeys:_txtLogin.text,@"email",_txtPass.text,@"pwd", nil] onCompletion:^(NSDictionary *json){
//completion
if(![json objectForKey:@"error"]){
if([[json valueForKeyPath:@"data.status"]intValue] == 200){
//Create user object
NSLog(@"tot hier");
loginstatus = YES;
}else{
//show validation
NSString *message = [NSString stringWithFormat:@"%@",[json valueForKeyPath:@"data.text"]];
[[[UIAlertView alloc]initWithTitle:@"Fout" message:message delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil]show];
_txtLogin.text = @"";
_txtPass.text = @"";
loginstatus = NO;
}
}else {
NSLog(@"Cannot connect to the server");
}
}];
if(loginstatus){
NSLog(@"true");
}else{
NSLog(@"false");
}
return loginstatus;
}
私が抱えている問題は、自分BOOL
がすぐに設定されないことです。ブール値が正しく設定される前に、常にログインボタンを2回押す必要があります。
何か案は?