-1

最近、ビューで ontouch イベントを使用しようとしましたが、指が静止していても、X 軸がランダムに 5 または 10 ピクセルを超えてジャンプすることに気付きました。これはハードウェアの問題ですか? ontouch move イベントが不正確であることを読んだので、正確に行う方法を知りたいです。

case MotionEvent.ACTION_DOWN:

    lastmovex = (int) event.getX();
    lastmovey = (int) event.getY();

    break;

case MotionEvent.ACTION_MOVE:

    int x = (int) event.getX(pointerindex) - lastmovex;
    int y = (int) event.getY(pointerindex) - lastmovey;
    Log.d(TAG,"move x="+x+" y="+y);
    break;

これは私を示しています(指はまだ一点にあります):

move x=0 y=0
move x=-2 y=0
move x=0 y=0
move x=1 y=0
move x=-5 y=0
move x=3 y=0
move x=1 y=0
move x=0 y=0

それで、どうすれば精度を上げることができますか、それとも私のデバイスにその問題がありますか? ご協力いただきありがとうございます

4

1 に答える 1

1
int x = (int) (event.getX(pointerindex) * event.getXPrecision()  - lastmovex);
int y = (int) (event.getY(pointerindex) * event.getXPrecision()  - lastmovey);

これで測ってみる?

于 2013-02-04T16:16:51.427 に答える