My answer is based on this link and it works for me.
final GestureDetector gestureDectector = new GestureDetector(mContext, new GestureListener());
listview.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_MOVE) {
return false;
}
gestureDectector.onTouchEvent(event);
return true;
}
});
GestureListener GestureDetector.SimpleOnGestureListener {
public boolean onDoubleTap (MotionEvent e) { int position = listview.pointToPosition((int) e.getX(), (int) e.getY()); ( < 0) { return true; } Toast.makeText(mContext, " " + mList.get(position).content, Toast.LENGTH_SHORT).show(); return true; } @Override public boolean onSingleTapConfirmed (MotionEvent e) { int position = listview.pointToPosition((int) e.getX(), (int) e.getY()); ( < 0) { return true; } Toast.makeText(mContext, "single-click" + mList.get(position).content, Toast.LENGTH_SHORT).show(); return true; }
}
> source
share