我用来显示 phonecontacts 列表并尝试单击一个项目,当双击完成时,应考虑较早的 clickeditem 并拨打电话。类似于启用对讲可访问性时的模仿。
但是,每当我尝试双击 listitem 时,都会调用 onItemClick 。但是当在列表项的边缘双击时,会捕获 doubleTap 事件。
任何人都可以请帮助可能是什么问题?
还有帮助如何做:默认情况下应该选择列表的第一项并说出第一个联系人,当用户滚动阅读下一个联系人并突出显示该列表项时。
我用来显示 phonecontacts 列表并尝试单击一个项目,当双击完成时,应考虑较早的 clickeditem 并拨打电话。类似于启用对讲可访问性时的模仿。
但是,每当我尝试双击 listitem 时,都会调用 onItemClick 。但是当在列表项的边缘双击时,会捕获 doubleTap 事件。
任何人都可以请帮助可能是什么问题?
还有帮助如何做:默认情况下应该选择列表的第一项并说出第一个联系人,当用户滚动阅读下一个联系人并突出显示该列表项时。
转载自https://stackoverflow.com/a/6290044:
public class MyView extends View {
GestureDetector gestureDetector;
public MyView(Context context, AttributeSet attrs) {
super(context, attrs);
// creating new gesture detector
gestureDetector = new GestureDetector(context, new GestureListener());
}
// skipping measure calculation and drawing
// delegate the event to the gesture detector
@Override
public boolean onTouchEvent(MotionEvent e) {
return gestureDetector.onTouchEvent(e);
}
private class GestureListener extends GestureDetector.SimpleOnGestureListener {
@Override
public boolean onDown(MotionEvent e) {
return true;
}
// event when double tap occurs
@Override
public boolean onDoubleTap(MotionEvent e) {
float x = e.getX();
float y = e.getY();
Log.d("Double Tap", "Tapped at: (" + x + "," + y + ")");
return true;
}
}
}