私のアプリは、CLLocationManagerからの何千もの緯度と経度の詳細を保存して、地図上にオーバーレイを描画します。ここで、そのオーバーレイにジェスチャーを追加し、他の場所ではなくオーバーレイに触れたときにメッセージを表示したいと思いました。誰かがこれに対する簡単な解決策を思い付くことができますか?
質問する
93 次
2 に答える
1
オーバーレイがビューとして実装されている (またはビューの一部である) と仮定すると、関数をオーバーライドできます。
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;
ユーザーが画面に触れた場所をテストします。
オーバーレイに外接する四角形がある場合は、ユーザーのタッチ位置を四角形と単純に比較できます。これにより、タッチがオーバーレイ内にあるかどうかがわかります。
于 2013-01-29T08:24:34.837 に答える
0
これは私のために働きます。
UITapGestureRecognizer *tgr = [[UITapGestureRecognizer alloc]
initWithTarget:self action:@selector(handleGesture:)];
tgr.numberOfTapsRequired = 2;
[mapView addGestureRecognizer:tgr];
[tgr release];
于 2013-01-29T08:31:43.250 に答える