2016-04-25 43 views
0

UIImagePickerControllerを使用して写真を撮影し、ズームピンチ機能の使用を無効にし、[picker addSubView:myOverlay]を行うとカメラコントロールをブロックしないようにしたいと考えています。だから私は私のUIImagePickerControllerカメラコントロールが影響を受けないようにすべての接触を傍受したいという希望で、次の "myOverlayView"クラスを作成します。UIImagePickerControllerの拡大/縮小コントロールを無効にする方法は?

(このチュートリアルあたり: https://josee.me/2011/02/16/overlaying-the-iphone-camera-without-blocking-its-controls/

// implement UIView Class... 
@implementation myOverlayView : UIView 

- (id)initWithFrame:(CGRect)frame { 
    if (self = [super initWithFrame:frame]) { 
     self.opaque = NO; 
     self.backgroundColor = [UIColor clearColor]; 
    } 
    return self; 
} 

- (BOOL)hitTest:(CGPoint)point withEvent:(UIEvent *)event { 
    NSLog(@"hitTest....hit"); 
    return nil; 
} 

@end 

// Call Camera... 
picker.delegate = self; 
picker.allowsEditing = NO; 
picker.sourceType = UIImagePickerControllerSourceTypeCamera; 

myOverlayView *myOverlayView1 = [[myOverlayView alloc]init]; 

[picker.view addSubview:myOverlayView1]; 


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

hitTest:イベントメソッドがヒットし、オーバーレイが追加された後、ズームピンチはまだ動作します。 私は何が欠けていますか?

+0

投稿したコードにどのような問題があるのか​​を指定しません。 – rmaddy

答えて

2

なぜあなたは次のことを試してみませんか?オーバーレイにUIPinchGestureRecognizerを追加し、*pinchGesture.cancelsTouchesInView = YESを設定しますか?これを試したことはありませんが、ピッカーの挟み込みを傍受することができるはずです。

関連する問題