UIImagePickerController cameraOverlay在快门后面

时间:2012-12-13 08:08:54

标签: ios uiimagepickercontroller camera-overlay

找不到任何确定的答案,但看起来不可能。我只是将帧图像显示为叠加层,以指导用户放置照片的位置。然而,在打开和关闭动画时,框架出现在快门的顶部。是否有任何(app store兼容)方式使叠加视图出现在快门动画后面?

此外,在用户按下拍照按钮后何时删除/隐藏叠加?我启用了allowEditing,因此我不希望在编辑图像时显示帧叠加。我无法想象如何捕获该事件。

由于

1 个答案:

答案 0 :(得分:0)

在iPad上,此问题不存在,默认情况下,叠加视图位于快门动画后面。但是在iPhone上,叠加层出现在前面。

编辑:

我找到了一个适合我的解决方案。

您必须在此方法中将叠加视图设置为子视图:

- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
    if (!viewController)
        return;

    UIView* controllerViewHolder = viewController.view;
    UIView* controllerCameraView = [[controllerViewHolder subviews] objectAtIndex:0];
    UIView* controllerPreview = [[controllerCameraView subviews] objectAtIndex:0];
    [controllerCameraView insertSubview:self.overlayView aboveSubview:controllerPreview];
}

希望有所帮助

原始来源: http://www.alexcurylo.com/blog/2009/06/18/uiimagepickercontroller-in-3-0/