16

1 つのビュー アイテムのタッチ イベントを処理して、画面から実際の (x,y) を取得するのに問題があります。

私はこれを持っています:

ここに画像の説明を入力

ビュー項目に触れると、原点が左上隅にある座標が表示されます。ビューから指をスライドさせると、負の座標が表示されます (上または左にスライドしたとき)。 ここに画像の説明を入力 ここに画像の説明を入力

画面内のビューの位置を取得して、取得した (x,y) 座標に追加したいので、最終結果は (0,0) が画面全体の左上隅にあることです. ここに画像の説明を入力

指がいつ右下隅にあるのかを知るために、画面全体のサイズも必要です。

どうすればこれを達成できますか?

ありがとう。

4

3 に答える 3

16

あなたが発見したように、 MotionEvent クラスには、ビューに相対的な座標を返すメソッドがありますgetX()getY()

ただし、ドキュメントによると、次のメソッドもgetRawX()あります。getRawY()

このイベントの元の生の X (または Y) 座標を返します。画面上のタッチ イベントの場合、これは、ウィンドウとビューを含むように調整される前の、画面上のイベントの元の場所です。

これがあなたが求めているもののように聞こえます。

于 2012-08-06T16:41:34.403 に答える
0

View画面上のの位置を 取得し、単純な算術を使用して残りを計算できます。ビューの絶対座標を取得する方法

于 2012-08-06T16:37:24.187 に答える