2012-01-02 5 views
1

皆さん。私はマップビューで作業していますが、ピンチとタップ検出の問題を解決できません。ピンチを検出し、マップビューでタップしたいと思います。マップビューでピンチとタップを検出するにはどうすればよいですか?

私はiPhoneのMapViewに次のコードを試みた

UITapGestureRecognizer *タップ= [[UITapGestureRecognizer ALLOC] initWithTarget:自己アクション:@selector(checktap)]。 [self.mapView addGestureRecognizer:Tap]; [タップリリース];

UIPinchGestureRecognizer * pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:自己アクション:@selector(checkpinch)]; [self.mapView addGestureRecognizer:pinch]; [ピンチ解放];

タップは機能していますが、ピンチ検出が機能していません。

私を助けてください。

ありがとうございました。

+1

を "私はピンチを検出し、マップビューでタップします。" - 何を試しましたか?何がうまくいかなかったのですか? SOは "私のコーディングを無料で行う"サイトではありません。 –

+1

マップビューでUIPanGestureRecognizer、UIPinchGestureRecognizerをGestureRecognizerとして追加しようとしましたが、動作しませんでした – Nit

答えて

3

ビュー内に次のコードを追加すると、.hファイルにジェスチャ認識プログラムの代理人が読み込まれて追加されました。

...お楽しみください:)

[self.view insertSubview:mapView atIndex:0]; 

//Gesture reconizer 
UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc]initWithTarget:self action:@selector(checkpinch)]; 
[pinch setDelegate:self]; 
[pinch setDelaysTouchesBegan:YES]; 
[self.mapView addGestureRecognizer:pinch]; 
[pinch release]; 

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(checktap)]; 
[singleTap setDelegate:self]; 
singleTap.numberOfTapsRequired = 1; 
singleTap.numberOfTouchesRequired =2; 
[self.mapView addGestureRecognizer:singleTap]; 
[singleTap release]; 


UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(checktap)]; 
[doubleTap setDelegate:self]; 
doubleTap.numberOfTapsRequired = 2; 
doubleTap.numberOfTouchesRequired =1; 
[self.mapView addGestureRecognizer:doubleTap]; 
[doubleTap release]; 
関連する問題