如何以编程方式将Android手势视图添加到自定义视图?

如何以编程方式将Android手势视图添加到自定义视图?,android,gestures,Android,Gestures,我有一个自定义视图,可以很好地工作,我正在尝试将手势融入其中。我看到的最常见的技术是添加XML,例如(来自Android文档: <android.gesture.GestureOverlayView android:id="@+id/myGestures" android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="1.0" /> 但是回调永远不会被

我有一个自定义视图,可以很好地工作,我正在尝试将手势融入其中。我看到的最常见的技术是添加XML,例如(来自Android文档:

<android.gesture.GestureOverlayView
  android:id="@+id/myGestures"
  android:layout_width="fill_parent"
  android:layout_height="0dip"
  android:layout_weight="1.0"
  />
但是回调永远不会被调用

有人能指出我的错误,建议一种更好的方法让我得到手势回复和/或建议诊断方法吗?

问候, 在我努力寻找解决同一问题的方法时,我遇到了你的问题:我有一个自定义视图,一个仪表,我无法使用手势(直到我找到你的问题)

我能够解决这个问题,因此做出了这样的回应

我发现我的视图返回的是点击事件,但动作总是0,因为动作是向下的……而在我的另一个布局中,在手势起作用的地方,我可以为任何一个手势获得各种动作

我继续使用失败的
线性布局
,并使用上面的代码将其包含在
gestureOverlayView
中。一个不同之处是,我将我的整个线性布局放在
gestureoverlay
中。上面的示例显示了
gestureoverlay
作为一个没有任何内容的独立实体这可能是你的问题的原因

要使用它,我只需根据overlayview注册我的手势侦听器,如下所示:

((GestureOverlayView) findViewById(R.id.myGestures)).setOnTouchListener(gestureListener);
很抱歉,我的反应很快,但我希望至少我能对你的问题有所了解,或者帮助任何其他在使用手势时遇到这种怪癖的人


BH

可以发布异常堆栈跟踪吗?可以使用
adb logcat
命令获取异常堆栈跟踪。另外,请注意,以编程方式创建视图时,需要指定宽度和高度(请参见
LayoutParams
)。
((GestureOverlayView) findViewById(R.id.myGestures)).setOnTouchListener(gestureListener);