0
嘿,我創建的iOS應用程序需要用戶使用用戶名和密碼登錄,然後將此用戶名和密碼發送到Web服務器進行認證。當它發送請求並等待響應時,我顯示一個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];
}
}
感謝
感謝OMZ,似乎做的正是我需要它。可悲的是,我必須讓用戶等待,因爲應用程序使用的所有數據都必須是最新的,而且我無法在手機上存儲任何內容 – williamb 2011-01-13 17:28:52