3

cameraOverlayView以前はタッチして(in )にフォーカスしていUIImagePickerControllerましたが、iOS 5 にアップデートすると機能しなくなりました。

のビューに適用したカスタム ビュー クラスを使用しましたcameraOverlayView。すべてが接続され、Interface Builder に適用されていることを確認しました。カメラ コントロールを表示したくありません。( imagePicker.showsCameraControlls = NO)。

これは OverlayView クラスの私のコードです:

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

    UIView * previewView = [[[[[[[[[[
                                     self.picker.view // UILayoutContainerView
                                     subviews] objectAtIndex:0] // UINavigationTransitionView
                                   subviews] objectAtIndex:0] // UIViewControllerWrapperView
                                 subviews] objectAtIndex:0] // UIView

           subviews] objectAtIndex:0] // PLCameraView
                             subviews] objectAtIndex:0]; // PLPreviewView
    [previewView touchesBegan:touches withEvent:event];
    NSLog(@"Should Focus");
}

オーバーレイでタップしてフォーカスする別の方法がありますか?

または、これを修正する方法を知っていますか?

事前にどうもありがとうございました!

4

1 に答える 1

-1

ios5.0 Touch イベントが UIImagePickerController の cameraOverlayView プロパティのビューに転送されないためです。

次のように初期化コードを変更してください。

// self.cameraOverlayView = [[UIView alloc] init];
// [self.cameraOverlayView addSubview:previewView];

[self.view addSubview:mask];
[self.view bringSubviewToFront:previewView];
于 2011-11-18T05:48:48.487 に答える