繁体   English   中英

cameraOverlayView阻止使用allowsEditing进行编辑

[英]cameraOverlayView prevents editing with allowsEditing

在拍摄照片后进行编辑(移动和缩放)在我的应用程序中使用此行正常工作:

[imagePicker setAllowsEditing:YES];

但如果我也使用cameraOverlayView,则编辑模式不再起作用。 屏幕出现,但平移和捏动手势不会发生任何事情。

我正在使用你的普通图像选择器控制器:

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];

我添加了一个相机覆盖视图,从自定义视图控制器的视图创建:

CameraOverlayViewController *overlayController = [[CameraOverlayViewController alloc] init];
UIView *overlayView = overlayController.view;
[imagePicker setCameraOverlayView:overlayView];

在IB中,该视图被设置为允许用户交互和多次触摸,这允许其在拍摄照片时进行缩放和聚焦。 但是一旦拍摄照片并进入编辑模式,您就无法平移或捏合移动或缩放照片。

我错过了什么?

您的叠加层是否会占据摄像机视图的整个空间? 如果是这样,即使您有透明背景,触摸也会转到叠加而不是下面的视图。

将此方法添加到叠加层视图中,它将忽略触摸,以便将它们传递到下面的视图。 (您正在覆盖检测触摸的UIView方法。)

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event
{
    return NO;
}

注意:除了那个梦幻般的提示之外,您可能还想在此阶段使用这条信息来删除叠加视图: UIImagePicker cameraOverlayView出现在Retake屏幕上

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM