В onTouch() нужно задать действие при одном нажатии(что сделать легко) и при двух быстрых нажатиях(желательно, чтобы можно было задать максимальный интервал времени между касаниями). Единственное что лезет в голову, это вначале действия в случае одного нажатия поставить sleep на время, и если было второе касание выполнить соответствующий код. Sleep() работает (удивительно), но по ощущениям он работает так, как будто при касании экрана не срабатывает новый поток обработчика, а есть один поток обработчик который линейно обрабатывает нажатия. Как сделать, чтобы обработчик ждал некоторое время следующее касание?
попробуйте такой вариант
final GestureDetector gestureDetector = new GestureDetector(context,new GestureDetector.SimpleOnGestureListener() {
public boolean onDoubleTap(MotionEvent e) {
Log.e("onDoubleTap", "Open new activty here");
return true;
}
});
TextView tv = (TextView) findViewById(R.id.editTextID);
tv.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
return gestureDetector.onTouchEvent(event);
}
});
Сборка персонального компьютера от Artline: умный выбор для современных пользователей