我使用下面的代码来下载从URL的异步文件,UIProgressView在IOS
NSMutableData *responseData = [[NSMutableData alloc] init];
NSURL *url = [NSURL URLWithString:@"http://www.tuiscos.com/images/trading.png"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[NSURLConnection sendAsynchronousRequest:request
queue:[NSOperationQueue mainQueue]
completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
// do something with data
[responseData appendData:data];
myImage8.image = [UIImage imageWithData:data];
NSInteger len = response.expectedContentLength;
NSInteger receiverdBytes = 0;
receiverdBytes = data.length+ receiverdBytes;
float prog = (float)[responseData length]/(float)len;
[progress8 setProgress:prog];
}];
在下载的进展,我想更新进度条,但使用此代码,我不逐渐取得进展,而是等待完成下载并跳到最大值。我怎样才能在价值上逐步取得进展? 有人可以提供一个示例代码?用委托方法的异步方法。 谢谢:)
感谢您的回复,我想同时执行多个下载。那么我如何使用委托方法处理它?而且我还需要更新不同的uiprogressviews上的进度。可能吗? – Mithuzz 2012-03-28 15:41:37
@John你可以将所有的openned连接放在一个数组中,并将它们与**连接中的连接进行比较:didReceiveData:**委托方法来识别当前接收到的数据 – 2012-03-29 09:21:09
@MartinPilch谢谢,但我对此很陌生地区,那么你可以给我看一个示例代码吗? – Mithuzz 2012-03-29 09:25:09