0

我想UIProgressView在用户将图像保存到相机胶卷时显示。

我需要知道在给定点下载了多少图像以确定进度指示器应该显示什么。我如何确定这一点?

我正在做类似的事情:

- (void)updateSaveProgressBar
{    
  if ([self.saveProgressView progress] < 1) {
    self.saveProgressView.progress = (float)receivedData / (float)totalData;
    [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(updateSaveProgressBar) userInfo:nil repeats:NO];
  }
}

self.saveProgressViewUIProgressView。在此示例中,如何确定 的值receivedData

谢谢。

4

1 回答 1

0

为了显示远程文件下载的进度,您必须使用异步下载NSURLConnection,并在每次连接接收数据时更新进度(connection:didReceiveData:)。连接成功后,您可以调用UIImageWriteToSavedPhotosAlbum将图像保存到相机胶卷。此外,UIImageWriteToSavedPhotosAlbum在保存完成时调用回调选择器,您可以使用该选择器向用户显示下载和保存图像的所有过程都已完成。

UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), NULL);

完成选择器

- (void)               image: (UIImage *) image
    didFinishSavingWithError: (NSError *) error
                 contextInfo: (void *) contextInfo
{

}

祝你好运!

于 2013-03-08T06:03:44.257 回答