UIA活动性指示器视图在图像拍摄完成后未显示在相机叠加视图上



我在相机OverlayView.xib上有一个UIActivityIndicatorView中间。我通过反复调用[cameraPicker takePicture]来拍摄多个快照。我想在波纹管代码完成所有快照时显示指标:

- (void)didTakePicture:(UIImage *)picture {   //Called from picker didFinishPickingMediaWithInfo
   [self.capturedImages addObject:picture];
   snapsCount ++;
   if (snapsCount < noOfSnaps) {
      [cameraPicker takePicture];
   }else {
     overlayView.indicator.hidden = NO;  //Not showing indicator
     [overlayView.indicator startAnimating]; //Not working
   }
}

谁能告诉我为什么不显示的原因。我可以在拍摄最后一次快照之前通过以下条件显示指标,但为什么不最后呢。

if (snapsCount < noOfSnaps) {
    if (snapsCount+1 == noOfSnaps) {
       overlayView.indicator.hidden = NO;  //Show the indicator
       [overlayView.indicator startAnimating];   //Work nicely
       overlayView.userMessage.text = @"Processing";
    }
    [cameraPicker takePicture];
}

是否有人遇到过这个问题,并且知道在所有快照完成后显示指示器的解决方案。

提前谢谢。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
if (snapsCount > noOfSnaps) {
overlayView.indicator.hidden = NO;  
[overlayView.indicator startAnimating];
}
[NSTimer scheduledTimerWithTimeInterval:0.3
                                 target:self 
                               selector:@selector(didTakePicture:) 
                               userInfo: [info objectForKey:UIImagePickerControllerOriginalImage] 
                                repeats:NO];
}

最新更新