好的,所以我链接到一个服务器,我知道我在那里的所有代码都是正确的。 但是这段代码似乎有问题:
-(void)connectionDidFinishLoading:(NSURLConnection *)connection {
NSString* responseString = [[NSString alloc] initWithData:_responseData encoding:NSUTF8StringEncoding];
/*Succesful Login*/
if([responseString isEqualToString:@"success"]){
[self performSegueWithIdentifier:@"LoginHomeToMain" sender:self];
NSLog(@"Succesful login.");
}
/*Deactivated Account*/
else if([responseString isEqualToString:@"disabled account"]){
}
/*Incorrect username and password.*/
else if([responseString isEqualToString:@"incorrect"]){
NSLog(@"Incorrect username and (or) password.");
}
/*GET request*/
else if([responseString isEqualToString:@"get"]){
}
}
所以我认为你可以忽略第二个和第四个,但如果是,但问题是:当我尝试一个用户并通过我知道服务器中不存在的用户时,它仍然将我转移到主标签栏视图。 我是否应该为"不正确"的逻辑重新加载登录页面的视图,还是我的 segue 错误? 附言 segue 只是从登录按钮链接到主标签栏视图,并且是模态的。
另外,我在调试器中不断收到此错误消息:
"对开始/结束外观转换的不平衡调用。"
非常感谢任何帮助,谢谢!
如果要有条件地执行 segue,则需要将 segue 从源视图控制器链接到目标视图控制器。
不要将 segue 与 UI 元素(如按钮)链接。 (如果您只想有条件地执行 segue,即)
将Segue 的原点连接从按钮更改为视图控制器将解决您的问题,而无需更改一行代码。
就个人而言,我刚刚开始总是从视图控制器链接。 编写一行代码来执行 segue 很容易,而且您永远不知道以后何时必须围绕它编写某种条件逻辑。 因此,养成这样做的习惯可能是件好事。