touchlisteners和textviews

时间:2010-03-09 18:25:04

标签: android view ontouchlistener

实际上我正在尝试将ontouchlistener实现到我的android(1.5)应用程序中。 因此我在课堂上实现了“ontouchlistener”,然后我将我的代码放入:

public boolean onTouchEvent (MotionEvent e){
 //code
}

问题是,如果我拖动(例如)Spinner或EditTextView,则不会调用此方法。我想出解决这个问题的唯一方法是手动为每个视图添加一个ontouchlistener:

((Spinner)(findViewById(R.id.spinner1))).setOnTouchListener(tl);
((Spinner)(findViewById(R.id.spinner2))).setOnTouchListener(tl);

(tl是ontouchlistener) 那么有没有办法在触摸事件到达每个视图之前捕获它? 提前谢谢

Ripei

1 个答案:

答案 0 :(得分:0)

你到底想做什么 - 你想要:

  • 检测某些人的整个手势 Activity
  • 仅检测给定的触摸 View

如果你想要前者:

看看这个例子: Fling gesture detection on grid layout

基本上,您将所有已注册的触摸事件重定向到GestureDetector。 它了解用户输入的确切内容(单击,双击,滚动等)并在SimpleOnGestureListener中调用相应的回调,您应该实现。

如果你想要后者:

你可以:

  1. 覆盖视图的onTouchEvent()
  2. 实现并挂钩onTouchListener(如果您想在发送之前获得联系)。
  3. 如果您要实施onTouchListener,那么您的工作不是onTouchEvent()方法,而是接口的onTouch()方法。

    希望有所帮助。