ユーザー名とパスワードを使用してログインする必要のあるiOSアプリケーションを作成しています。このユーザー名とパスワードは、認証されるWebサーバーに送信されます。要求を送信して応答を待つ間、私はUIActivityIndicatorを表示します。UIがすぐにスピナーを表示しない
問題は、UIActivityIndicatorがすぐにボタンの押下などに表示され、数秒後に表示されることがあることです。 UIが更新される前にOSが別のスレッドを実行しているためだと思っていますが、誰かがこの遅延を引き起こす可能性があるかどうかを知りたいのですか?
以下の私のコード:
-(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];
}
}
おかげ
おかげOMZ、。残念ながら私は、アプリケーションが使用するすべてのデータが最新のものでなければならないため、ユーザーを待たせる必要があります。電話には何も保存できません – williamb