Эй, я создаю приложение для iOS, которое требует от пользователя входа в систему с использованием имени пользователя и пароля, затем эти имя пользователя и пароль отправляются на веб-сервер для аутентификации. Пока он отправляет запрос и ждет ответа, я показываю UIActivityIndicator.
Проблема, которую я получаю, заключается в том, что иногда UIActivityIndicator сразу появляется при нажатии кнопки, а иногда - только через несколько секунд. Я предполагаю, потому что ОС выполняет другой поток перед обновлением пользовательского интерфейса, но я хотел бы знать, знает ли кто-нибудь наверняка, что может быть причиной такой задержки, или просто мой код виноват.
Мой код ниже:
-(void)loginPressed:(id)sender{
if ([self validateForm]) {
[self startLoadingAnimation:@"CONNECTING"];
[Session theSession].authenicatedUsername = usernameTextField.text;
[Session theSession].authenicatedPassword = passwordTextField.text;
usernameTextField.text = @"";
passwordTextField.text = @"";
[self setUserDetailsBasedOnUserID:[Session theSession].authenicatedUsername password:[Session theSession].authenicatedPassword];
}else {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"MISSING_LOGIN_DETAILS_TITLE", @"")
message:NSLocalizedString(@"MISSING_LOGIN_MESSAGE", @"")
delegate:self
cancelButtonTitle:NSLocalizedString(@"OK_BUTTON", @"")
otherButtonTitles:nil];
[alert show];
[alert release];
}
}
Спасибо