【问题标题】:ImagePicker loads very long for the second timeImagePicker 第二次加载很长
【发布时间】:2014-03-05 10:12:45
【问题描述】:

iOS ImagePicker 有问题。它可以正常工作,但是当我想拍摄另一张照片时,相机会加载很长时间(第一次:1-2 秒,第二次和以后:8-10 秒)。我就是这样使用它的:

- (void)takePhoto {
    _imagePicker = [UIImagePickerController new];
    _imagePicker.delegate = self;
    _imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
    _imagePicker.allowsEditing = NO;
    [self presentViewController:_imagePicker animated:YES completion:nil];
}

这就是我获取图像的方式:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
    [_imagePickerView.imageView setImage:image];
}

我认为没有太多地方可以容纳错误。当然我实现了协议UIImagePickerControllerDelegateUINavigationControllerDelegate

您有什么想法可以找出是什么原因造成的吗?

【问题讨论】:

  • 看看这个question。它与您使用imagePickerController 加载的非常大的图像有关。你应该缩小它们。

标签: ios iphone uiimagepickercontroller


【解决方案1】:

您可能希望通过调用选择项目后关闭 UIImagePickerController

[_imagePicker dismissViewControllerAnimated:YES completion:nil];

现在应该没问题了。

【讨论】:

  • 我不是问题,我仍在尝试解决它。​​
【解决方案2】:

尝试更改您的第一个代码块以重用您已初始化的同一 imagePicker:

- (void)takePhoto {
    if(_imagePicker == nil)
        _imagePicker = [UIImagePickerController new];
    _imagePicker.delegate = self;
    _imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
    _imagePicker.allowsEditing = NO;
    [self presentViewController:_imagePicker animated:YES completion:nil];
}

【讨论】:

  • 我不是问题,我仍在尝试解决它。​​
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-08
  • 1970-01-01
  • 2021-05-23
  • 1970-01-01
相关资源
最近更新 更多