【问题标题】:How to dismiss UIImagePickerController on iPad如何在 iPad 上关闭 UIImagePickerController
【发布时间】:2015-08-12 14:07:04
【问题描述】:

我正在使用UIImagePickerController

UIImagePickerController *picker = [[UIImagePickerController alloc] init];    
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
popover = [[UIPopoverController alloc] initWithContentViewController:picker];
[popover presentPopoverFromRect:CGRectMake(0, 10, 500, 500) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

当我使用来自画廊类委托的任何照片时,didFinishPickingMediaWithInfo 会被调用。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {

    NSLog(@"inside Delegate image pick");

    [popover dismissPopoverAnimated:YES];
    [picker dismissViewControllerAnimated:YES completion:NULL];
}

这很好,但我在使用 imagePickerControllerDidCancel 委托方法时遇到了问题。

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {

    NSLog(@"inside Cancel ");

    [popover dismissPopoverAnimated:YES];

    [picker dismissViewControllerAnimated:YES completion:NULL];
}

imagePickerControllerDidCancel 从未被调用,我不知道为什么。用户单击取消时如何关闭弹出框?

【问题讨论】:

    标签: ios ipad uiimagepickercontroller


    【解决方案1】:

    如果imagePickerControllerDidCancel 没有被调用,则意味着您需要实现UIImagePickerControllerDelegate

    例子

    @interface ImageViewController : UIViewController<UIImagePickerControllerDelegate>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-25
      • 2013-09-27
      • 2013-01-04
      相关资源
      最近更新 更多