iPhone:使用NSURLConnection下载数据时UI被阻止

时间:2012-09-12 09:59:21

标签: iphone objective-c ios

我正在使用NSURLConnection从服务器下载视频文件,同时通过将不同的网址链接传递给电影播放器​​来播放视频。 问题是一些UI的阻塞。在下载过程中,我们无法与UI进行交互,例如播放器缩放,暂停按钮被阻止。 代码就像连接一样:_

connection1=[[NSURLConnection alloc] initWithRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:urlStr]] delegate:self];

在同一个方法中我们称之为

[playerInstance Play]

请你解释我的问题所在。

2 个答案:

答案 0 :(得分:0)

我无法完全理解你的问题。但我认为你在同一个线程上做了两个工作(downloadig,播放文件),可能是主线程。所以这可能发生。因此,尝试在单独的线程中运行这两个进程。

            [self performSelectorOnMainThread:@selector(playfile:) withObject:nil waitUntilDone:NO];

        [self performSelectorInBackground:@selector(downloadfile:) withObject:nil];

答案 1 :(得分:-1)

您应该为NSUrl操作创建函数,如果已经进行了异步通信,请按以下方式调用此函数。

[self performSelector:@selector(method) withObject:nil afterDelay:1];