2015-02-06 63 views
2

我知道几年前有关于此主题的问题,但我认为他们的解决方案已过时和/或我无法让他们工作。我尝试了所有info.plist更改等。UIImagePickerController预览图像向下移动

我正在使用UIImagePickerController。拍摄照片后,预览图像(带有“重拍”和“使用照片选项”)将跳下约20个像素。它好像占据了mediaTypes工具栏区域。

有关如何防止图像转移的任何建议?下面是相关的代码(很基本的)

- (IBAction)takePhoto:(UIButton *)sender { 
    UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
    picker.delegate = self; 
    picker.sourceType = UIImagePickerControllerSourceTypeCamera; 
    [picker prefersStatusBarHidden]; 
    [self presentViewController:picker animated:YES completion:NULL]; 
} 

- (BOOL)prefersStatusBarHidden { 
    return YES; 
} 

回答

3

尝试了不少配置的东西,没有工作后,我参加了一个简单的方法,迫使摄像机视图下由相同数量的像素,预览图像是利用变换转移,即

picker.cameraViewTransform = CGAffineTransformTranslate(picker.cameraViewTransform, 0.0, 30.0); 

整方法:

- (IBAction)takePhoto:(UIButton *)sender { 

    UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
    picker.delegate = self; 
    picker.sourceType = UIImagePickerControllerSourceTypeCamera; 
    picker.cameraDevice = UIImagePickerControllerCameraDeviceFront; 

    picker.cameraViewTransform = CGAffineTransformTranslate(picker.cameraViewTransform, 0.0, 30.0); 

    [self presentViewController:picker animated:YES completion:NULL]; 
}