您好,我正在开发这个有登录部分的应用程序。我想要的是当我单击登录按钮时,该按钮必须是不可点击的,直到登录成功或失败。我已经尝试添加这一行 doLogin.enabled = NO;
但这没有用。请帮忙。这是我的代码:
- (IBAction)doLoginid)sender {
[self loginUser];
}
- (void)loginUser
{
if (![self.usernameBox.text isEqualToString""] && ![self.passwordBox.text isEqualToString""])
{
//TODO: check id email pattern is correct
[self showLoginProcess:true];
[[AuthSingleton getInstance] attemptLoginWithUsername:self.usernameBox.text andPassword:self.passwordBox.text withSuccesBlock:^(AFHTTPRequestOperation *operation, id responseObject)
{
[self showLoginProcess:false];
UIViewController *newFrontController = nil;
PaMapViewController * vc = [[PaMapViewController alloc] init];
newFrontController = [[UINavigationController alloc] initWithRootViewController:vc];
SWRevealViewController *revealController = self.revealViewController;
[revealController pushFrontViewController:newFrontController animated:YES];
} andFailureBlock:^(AFHTTPRequestOperation *operation, NSError *error)
{
NSDictionary *dic = [error.userInfo objectForKey"JSONResponseSerializerWithDataKey"];
#ifdef DEBUG
NSLog(@"dic = %@", dic);
#endif
if ([[dic objectForKey"error_uri"] isEqual"phone"])
{
NSError *jsonError;
NSData *objectData = [[dic objectForKey"error_description"] dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *json = [NSJSONSerialization JSONObjectWithDatabjectData
options:NSJSONReadingMutableContainers
error:&jsonError];
[self loginFailed:json];
}
else
{
[self loginFailed:dic];
}
}];
}
else
{
//TODO: show proper message Test
NSLog(@"username or password is empty %@", kBaseURL);
}
}
- (void)showLoginProcessBOOL) show
{
[self.spinner setColor:[UIColor whiteColor]];
self.spinner.hidden = !show;
self.usernameBox.hidden = show;
self.passwordBox.hidden = show;
if (show)
{
[self.spinner startAnimating];
} else
{
[self.spinner stopAnimating];
}
}
Best Answer-推荐答案 strong>
希望您已经为登录按钮声明了一个属性。让它成为“doLogin”。
你需要做的是
- (IBAction)doLoginid)sender
{
[self loginUser];
doLogin.userInteractionEnabled = NO;
}
当登录成功或失败时写入
doLogin.userInteractionEnabled = YES;
在相应的区 block 内。
关于ios - 登录时禁用(登录)按钮,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/30751906/
|