2

StartAnimatingメソッドを使用してUIActivityIndi​​catorViewを起動すると、次のようになります。 [ActivityIcon startAnimating];

すべてのユーザーインタラクションが無効になるため、ユーザーが[キャンセル]ボタンをタップすると、ダウンロードプロセスが中止され、UIActivityIndi​​catorが非表示になります。

任意の提案をいただければ幸いです。

編集:バックグラウンドでファイルをダウンロードするために別のスレッドを使用しています。私が行ったすべての進捗レポートとUIインタラクション:

[自己performSelectorOnMainThread:@selector(RefreshScreen :) withObject:nil waitUntilDone:YES];

また、RefreshScreenメソッドは、UI要素を操作するメソッドです。

4

1 に答える 1

3

この行を次のように変更してみ[request startSynchronous];てください: [request startAsynchronous];

編集

- (IBAction)grabURLInBackground:(id)sender
{
   NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];
   ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
   [request setDelegate:self];
   [request startAsynchronous];
}

- (void)requestFinished:(ASIHTTPRequest *)request
{
   // Use when fetching text data
   NSString *responseString = [request responseString];

   // Use when fetching binary data
   NSData *responseData = [request responseData];
}

- (void)requestFailed:(ASIHTTPRequest *)request
{
   NSError *error = [request error];
}
于 2012-07-15T15:50:46.423 に答える