Я использую один детектор жестов с несколькими прикрепленными представлениями. Я не уверен, что это лучший способ сделать это, но предоставление каждому представлению собственного детектора жестов делает мой код очень большим. Теперь я хочу проверить, какой вид дважды нажимается, если я дважды нажимаю на один из своих представлений. Не могу понять, как :(. Причина, по которой я подключаю все представления к одному и тому же детектору жестов, заключается в том, что все они должны делать одно и то же при двойном нажатии.
Я искал в Интернете, но не могу найти ничего полезного. Я надеюсь, что мой код сделает все более понятным.
implements View.OnTouchListener, GestureDetector.OnGestureListener, GestureDetector.OnDoubleTapListener
gestureDetector = new GestureDetector(this, this);
textView1.setOnTouchListener(this);
textView2.setOnTouchListener(this);
textView3.setOnTouchListener(this);
textView4.setOnTouchListener(this);
textView5.setOnTouchListener(this);
textView6.setOnTouchListener(this);
@Override
public boolean onTouch(View v, MotionEvent event) {
return gestureDetector.onTouchEvent(event);
}
public boolean onDoubleTap(MotionEvent e) {
editMode();
//Get tapped View
return false;
}
Я хотел бы видеть вывод внутри onDoubleTap(); например: текущий просмотр с двойным нажатием: (один из моих текстовых представлений). Я также обнаружил, что если я сначала коснусь textView1, а затем textView2, onDoubleTap(); будет срабатывать. Это означает, что было бы неплохо, если бы в ответе было выбрано представление, которое было использовано последним. Надеюсь, кто-нибудь может помочь: D