UIImagePickerController didFinishPickingMediaWithInfo委托调用延迟



我是iphone开发的新手。我正在我的应用程序中实现UIImagePickerController。当didFinishPickingMediaWithInfo委托被调用时,也就是当点击选择按钮时,它会有一些延迟。我的代码如下

- (void)imagePickerController:(UIImagePickerController *)picker   didFinishPickingMediaWithInfo:(NSDictionary *)info 
{
       LGViewHUD* hud = [LGViewHUD defaultHUD];
       hud.activityIndicatorOn=YES;
       hud.bottomText=@"Login..";
       [hud showInView:picker.view];
       [self performSelectorInBackground:@selector(pickerFunction:) withObject:info];
}
- (void) pickerFunction :(NSDictionary *)info
{
    profilePicture.image = [info objectForKey:@"UIImagePickerControllerEditedImage"];
    [imgPicker dismissModalViewControllerAnimated:YES];
}

我正试图在选择按钮上进行hud操作,但它只是在一段时间后才出现。有人能给我一个实现的方法吗。

提前谢谢。。

我认为对此没有什么可做的。

我自己也遇到过这个问题,滞后似乎来自UIImagePickerController调用委托方法"didFinishPickingMediaWithInfo"。一旦采用了这种方法,一切都会很快运行。在"didFinishPickingMediaWithInfo"中输入什么代码并不重要。滞后时间发生在调用该方法之前。

我甚至尝试过这个,它除了解除控制器之外什么也没做。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
     [self dismissModalViewControllerAnimated:YES];
}

并且仍然需要几秒钟的时间来关闭UIImagePickerController。

我在这个委托中发生了类似的延迟。事实证明,在图像/视频被压缩之前,didFinishPickingMediaWithInfo不会被调用,这可能需要几秒钟的时间,具体取决于它是什么。

最新更新