0

OnTouchListenerボタンに設定しています。モーションタイプがであるかどうかを確認できMotionEvent.ACTION_MOVEます。逆にそうだとTextView、一瞬も取れないMotionEvent.ACTION_MOVE

たとえば、以下のコードを見てください。

public boolean onTouch(View view, MotionEvent me) {
    if (me.getAction() == MotionEvent.ACTION_DOWN) {
        Log.e(TAG,"1");
    }
    if (me.getAction() == MotionEvent.ACTION_UP) {
        Log.e(TAG,"2");
    } else if (me.getAction() == MotionEvent.ACTION_MOVE) {
        Log.e(TAG,"3");
    }
    return false;
}

このリスナーをボタンにバインドすると、ログに「3」が表示されますが、これをImageViewまたはなどにバインドすると、「3」が表示されません。ただし、「1」と「2」はどちらの状況でも正常に動作しています。

それで、問題は(私が間違っていなければ)どのアイテムがMotionEvent.ACTION_MOVE敏感であるかということです。

4

2 に答える 2

0

Textviewには、MotionEvent ActionMove、http: //developer.android.com/reference/android/widget/TextView.htmlはありません。

ありがとう...

于 2012-04-02T10:03:52.150 に答える
0

また、このように実装してみてください。空にすると、 OnClickListenerACTION_UPonClickとACTION_DOWNとともにACTION_MOVEが検出されると思います。

class MyActivity implements View.OnTouchListerner, View.OnClickListener{
    .....
    public void onClick(View v) {}
    .....
}
于 2012-04-02T10:13:44.497 に答える