2

当我使用 StartAnimating 方法启动 UIActivityIndi​​catorView 时: [ActivityIcon startAnimating];

它禁用所有用户交互,因此当用户点击取消按钮时,应该中止下载过程并隐藏 UIActivityIndi​​cator 它不起作用!!!

任何建议,将不胜感激。

编辑:我正在使用单独的线程在后台下载文件。我完成的所有进度报告和 UI 交互:

[self 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 回答