打开时,iPad Camera的屏幕位置不正确

时间:2013-06-18 03:05:47

标签: ios ipad uiimagepickercontroller

我正在开发一款iPad应用程序来拍照或从库中选择。 它工作正常,唯一的问题是当您按照以下步骤时相机布局不正确。

  1. 列表项
  2. 点按btnPhotoLibrary按钮
  3. 取消弹出窗口
  4. 点击btnCamera按钮
  5. 生成的布局与图像非常相似 Camera has incorrect screen placement when open fullscreen modal from popover

      

    它的位置略低于屏幕边界。这意味着   底部的控件位于屏幕以南20px处   是屏幕顶部的20px黑色条带

    如果您不点击btnPhotoLibrary而只点击btnCamera,则没有问题。

    我们正在为相机和photolibrary使用相同的UIImagePickerController实例,因此我们可能需要在将其用作相机之前重置某些属性,但无法找到方法。

    -

    - (void)viewDidLoad {
        [super viewDidLoad];
        _imagePicker = [[UIImagePickerController alloc]init];
        _imagePicker.allowsEditing = FALSE;
        _imagePicker.delegate = self;
    }
    
    -(IBAction)btnCamera:(id)sender{
        if ([popover isPopoverVisible]) {
            [popover dismissPopoverAnimated:YES];
        }
        if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
            _imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
            [self presentViewController:_imagePicker animated:YES completion:nil];
        }
    }
    
    -(IBAction)btnPhotoLibrary:(id)sender{
        _imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;    
        if ([popover isPopoverVisible]) {
            [popover dismissPopoverAnimated:YES];
        }
        popover = [[UIPopoverController alloc] initWithContentViewController:_imagePicker];
        [popover presentPopoverFromRect:btnCameraRoll.bounds inView:btnPhotoLibrary permittedArrowDirections:UIPopoverArrowDirectionRight animated:YES];
    }
    

    目标操作系统是iOS6.1,横向视图。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

似乎将view的{​​{1}}属性重置为UIImagePickerController可以解决问题,但我想这与每次需要时创建nil的新实例几乎相同

UIImagePickerController