0

我正在使用 NSURLConnection 下载文件。我的视图中有一个 UILabel,它必须显示当前下载的文件。UILabel 在开始和结束时都会更新。假设我正在下载 10 个文件。我可以在开始下载之前和完成下载之后设置标签文本。

我可以理解,我试图调用的方法没有在主线程中运行,

所以我用下面的代码让它在主线程中运行,

[_myHome performSelectorOnMainThread:@selector(updateLabel) withObject:nil waitUntilDone:YES];

方法是

- (void) updateLabel
 {
         _fileName.text =[NSString stringWithFormat:@"%@",fileName];
 }

这似乎也不起作用。我在这里做错什么了吗?

谁能告诉我如何立即更新标签?

4

2 回答 2

0

已解决:我使用 NSNotificationCenter 向其他类发送通知,这将立即更新标签。我尝试使用 performSelectorOnMainThread,即使 updateProgress 和 performSelectorOnMainThread 都在同一个类中。

任何为什么它没有成功的原因,都是最受欢迎的。

于 2012-07-11T05:11:45.673 回答
-1
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
    //update your label 
}
于 2012-07-10T10:38:12.480 回答