我試圖在onTouch()
我的ListView
方法做一些工作。問題是,有時我收到ACTION_UP
類型的MotionEvent
之前沒有收到ACTION_DOWN
,它完全毀了我的應用程序。有人可以解釋什麼可能是一個問題?爲什麼ACTION_DOWN可能偶爾不會觸發ListView中的Android
這裏是我的OnTouchListener
的一些代碼:
@Override
public boolean onTouch(final View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
Log.d("TAG", "ATCION_DOWN");
break;
case MotionEvent.ACTION_MOVE:
//Log.d("TAG", "ACTION_MOVE");
break;
case MotionEvent.ACTION_UP:
Log.d("TAG", "ACTION_UP");
break;
}
return false;
}
這是我從日誌中獲取:
- 09-16 20:15:02.116 25661-25661/com.ulmaxy.morny d/TAG:ATCION_DOWN 09-16 20:15:02.186 25661-25661/com.ulmaxy.morny D/TAG:ACTION_UP 09-16 20:15:02.846 25661-25661/com.ulmaxy.morny D/TAG:ATCION_DOWN 09-16 20:15:02.916 25661-25661/com.ulmaxy.morny D/TAG:ACTION_UP 09- 16 20:15:03.586 25661-25661/com.ulmaxy.morny D/TAG:ACTION_UP 09-16 20:15:04.166 25661-25661/com.ulmaxy.morny D/TAG:ATCION_DOWN 09-16 20:15 :04.276 25661-25661/com.ulmaxy.morny D/TAG:ACTION_UP 09-16 20:15:05.316 25661-25661/com.ulmaxy.morny D/TAG:ACTION_UP 09-16 20:15:06.086 25661- 25661/com.ulmaxy.morny D/TAG:ACTION_UP 09-16 20:15:07.046 25661-25661/com.ulmaxy.morny D/TAG:ACTION_UP 09-16 20:15:08.136 25661-25661/com。 ulmaxy.morny D/TAG:ATCION_DOWN 09-16 20:15:08.256 25661-25661/com.ulmaxy.morny D/TAG:ACTION_UP 09-16 20:15:09.206 25661-25661/com.ulmaxy.morny D/TAG:ACTION_UP
你是否重寫了一些其他'View'的'onTouchEvent()'。如果你確定你正確地返回(true或false)。 – Abbas
@Abbas我不這樣做,但我有'ListView'的項目中有'onClickListener'的另一個視圖。雖然我確信當ACTION_DOWN沒有顯示時,我不會點擊這些視圖。 –