我正在使用NSURLConnection下载文件。我的视图中有一个UILabel,它必须显示当前正在下载的文件。 UILabel在开始和结束时都会更新。可以说我下载了10个文件。我可以在开始下载之前和完成下载之后设置Label文本。
我可以理解,我试图调用的方法没有在主线程中运行,
所以我使用以下代码使其在主线程中运行,
[_myHome performSelectorOnMainThread:@selector(updateLabel) withObject:nil waitUntilDone:YES];
和方法是
- (void) updateLabel
{
_fileName.text =[NSString stringWithFormat:@"%@",fileName];
}
这似乎也行不通。我在这里做错了吗?
谁能告诉我如何立即更新标签?
答案 0 :(得分:0)
解决:我使用NSNotificationCenter向其他类发送通知,这将立即更新标签。我尝试使用performSelectorOnMainThread,即使updateProgress,performSelectorOnMainThread都在同一个类中。
为什么它没有成功的任何原因是最受欢迎的。
答案 1 :(得分:-1)
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
//update your label
}