2011-08-25 13 views
10

[UIPanGestureRecognizer translationInView]から絶対タッチ座標を取得することはできますか?私はiPadアプリで作業しており、UIPanGestureRecognizerからタッチ座標値を取得するために多くを探しています!UIPanGestureRecognizerからのタッチ座標

Iきも試してみました...

任意の提案の連中を私たちはtransaltionInViewから取得した値を使用して相殺するが、私は本当にその背後にある数学を理解することはできませんよ?

ラヴィ

答えて

17

translationInViewジェスチャーのデルタ変化です。指を左に20pt移動すると、(-20.0, 0.0)となり、それはすでにその意味で「絶対」です。

おそらく、ビューがイベントを認識していないビューであっても、引数を渡したビューに対して相対的なlocationInViewが必要なことを意味します。通常、View Controllerのビュー、またはイベントを処理するビュー、または実装に適したサブビューを渡します。

また、あなたは本当の絶対的に必要がある場合は、引数を通じてnilを渡すことができ、心に留めておく、それはそれは、ウィンドウに対する相対(別名。「絶対」)

そして、あなたがする必要がある場合に返されます他のビューでロジックを実行する場合は、UIViewインスタンスメソッドを使用して、あるビューから別のビューに座標を変換できます。convertRect:fromView:convertRect:toView:convertPoint:fromView:convertPoint:toView:。これらのメソッドは、ビュー引数としてnilを受け入れて、ウィンドウに対して「絶対」を意味します。ここ

+0

恐ろしい!私はこれらのジェスチャーがUIGestureRecognizerから派生したという点を完全に忘れてしまった!もう一度、ありがとう! – Ravi

+3

ああ、私が探していたものは、LocationInViewでした... – Ravi

+4

@canドキュメントによると 'translationInView:'はデルタの動きではなく、全体的な動きを与えます。 –

0

は、簡単な方法である:

gesture.locationInView(myView) 

するCGPointとして受け取るによって表されるジェスチャの特定のビューに位置として計算点を返します。

+0

これが何をしているのか、OPがすでに試したこととは何かについてもっと詳しく説明できますか? 'CGPoint'を返しますか? – sgress454

+0

は編集しました – Esqarrouth

関連する問題