cameraOverlayView防止编辑与允许编辑

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

[imagePicker setAllowsEditing:YES]; 

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

我正在使用您的平均图像select控制器:

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

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

 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出现在“重拍”屏幕上