21284


UIPanGestureRecognizer でジェスチャーを取得して動作するアプリを作成中です。  
パンを開始する際にタッチした座標によって動作を切り替えたいと思っているのですが、  
パンのアクションメソッドで translationInView: と同様に指定したビュー内でタッチした座標を取得する方法はないでしょうか？


CC BY-SA 3.0
2016-01-25T05:45:16.490
21279
2016-01-25T07:22:48.067
12490
question
objective-c
UIPanGestureRecognizer でパンを開始した座標を取得するには？


`UIGestureRecognizer`（`UIPanGestureRecognizer`のスーパークラス）のメソッド`-
(CGPoint)locationInView:(UIView *)view`で取得できます。  
同じく`UIGestureRecognizer`のプロパティ`state`で、ジェスチャー開始`UIGestureRecognizerStateBegan`、ジェスチャー継続中`UIGestureRecognizerStateChanged`、ジェスチャー終了`UIGestureRecognizerStateEnded`を識別できるので、`UIGestureRecognizerStateBegan`で`locationInView:`を使い、タッチした座標を取得します。

_`UIPanGestureRecognizer`インスタンスで指定したアクションメソッド_

[code]

    - (void)panGesture: (UIPanGestureRecognizer *)gesture {
        CGPoint startPoint;
        if (gesture.state == UIGestureRecognizerStateBegan) {
            startPoint = [gesture locationInView: theView];
        }
    }
    
[/code]


CC BY-SA 3.0
2016-01-25T07:22:48.067
21284
2016-01-25T07:22:48.067
7362
21279
answer