6

私は自分のアクティビティでこの関数を呼び出します:

@Override
public boolean dispatchTouchEvent(MotionEvent touchEvent)

これにより、コンポーネントがフォーカスされる前にアクションを処理したり、これらの要素へのフォーカスを拒否したりすることができます。

問題:この関数でどのコンポーネント(ビュー)がタッチされたかをどのように知ることができるのか疑問に思っていたので、イベントを完了するかどうかを選択できました。

醜い解決策:私は現在醜い解決策を持っています:イベントを取得できるコンポーネントの位置を知っており、ユーザーがこのコンポーネントをクリックしたかどうかをおおよそ決定するためにたくさんの条件を実行します。

ありがとう。

4

2 に答える 2

0

おそらく、OnTouchListener

private OnTouchListener mOnTouchListener= new OnTouchListener() {

    public boolean onTouch(View v, MotionEvent event) {

          switch(v.getId()){

              case R.id.id1): 
              // Do stuff
              break;

              case R.id.id2: 
              // Do stuff
              break;
              }    

        return false/true;
    }
};
于 2012-07-12T10:24:01.457 に答える
-1

view.getid==R.id.//レイアウト内のid//必要なビューがクリックされたかどうかを確認できます

于 2012-07-23T11:49:06.263 に答える