2

次のようにして、スワイプが開始する場所の開始座標を見つけることができます

- (void)oneFingerSwipeUp:(UISwipeGestureRecognizer *)recognizer 
{ 
CGPoint point = [recognizer locationInView:[self view]];
NSLog(@"Swipe up - start location: %f,%f", point.x, point.y);
}

スワイプが終了した座標を見つけることはできますか? 私はドキュメントを調べましたが、言及されていません。これに対する回避策はありますか?

どうもありがとう、 -コード

4

4 に答える 4

7

ジェスチャ認識エンジンの状態プロパティを調べる必要があります

- (void)swipe:(UISwipeGestureRecognizer *)recognizer
{
   CGPoint point = [recognizer locationInView:[recognizer view]];
   if (recognizer.state == UIGestureRecognizerStateBegan)
       NSLog(@"began: %@", NSStringFromCGPoint(point));
   else if (recognizer.state == UIGestureRecognizerStateEnded)
       NSLog(@"ended: %@", NSStringFromCGPoint(point));
}
于 2012-12-20T11:06:24.507 に答える
0

はい、できます。UISwipeGestureRecognizerのサブクラスですUIGestureRecognizer。そして、そこにメソッドがあります: - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event

詳細については、このドキュメントをお読みください。

于 2012-12-20T11:04:30.297 に答える
0
CGPoint pt = [recognizer locationOfTouch:0 inView:view];

これにより、ジェスチャを開始したタッチの元の x、y 座標が得られると思います。

于 2012-12-20T11:05:38.360 に答える