Android 滚动多个Web视图时出现onTouch异常

Android 滚动多个Web视图时出现onTouch异常,android,android-webview,touch-event,Android,Android Webview,Touch Event,我有一个应用程序,它使用多个相邻的WebViews来显示内容。当在一个上垂直滚动时,我在第一个完全停止之前滚动另一个,我得到一个异常,下面是堆栈跟踪。堆栈中的第一行对我来说是最令人费解的。我不知道什么是VelocityTracker,也不知道其他变量指的是什么 11-30 10:47:04.740: E/webview(2199): Got null mVelocityTracker when mPreventDefault = 0 mDeferTouchProcess = false mTou

我有一个应用程序,它使用多个相邻的
WebView
s来显示内容。当在一个上垂直滚动时,我在第一个完全停止之前滚动另一个,我得到一个异常,下面是堆栈跟踪。堆栈中的第一行对我来说是最令人费解的。我不知道什么是
VelocityTracker
,也不知道其他变量指的是什么

11-30 10:47:04.740: E/webview(2199): Got null mVelocityTracker when mPreventDefault = 0 mDeferTouchProcess = false mTouchMode = 3
11-30 10:50:23.771: D/AndroidRuntime(2199): Shutting down VM
11-30 10:50:23.771: W/dalvikvm(2199): threadid=1: thread exiting with uncaught exception (group=0x40015560)
11-30 10:50:23.795: E/AndroidRuntime(2199): FATAL EXCEPTION: main
11-30 10:50:23.795: E/AndroidRuntime(2199): java.lang.NullPointerException
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.webkit.WebView.onTouchEvent(WebView.java:5283)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.view.View.dispatchTouchEvent(View.java:3885)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:903)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1702)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1125)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at android.app.Activity.dispatchTouchEvent(Activity.java:2132)
11-30 10:50:23.795: E/AndroidRuntime(2199):     at
...
我使用的是一个子类
WebView
,但我没有覆盖
onTouchEvent()
方法

有趣的是,我只在我使用的OSV2.3设备以及任何OSV2.x模拟器上发现了这个错误。每当我在4.x设备上测试时,一切都很好,所有的网络视图都能够同时处理触摸和滚动


发生了什么事?这是安卓系统中已知的错误吗?我找不到任何类似情况的记录。有什么解决办法的建议吗?我可以阻止其他
WebView
s被触摸,只要其中一个正在滚动,但这似乎很可笑。

我发现了问题的原因,但没有发现真正的问题是什么

WebView
不能传递所有
onTouch
事件时,我偶然发现了一个描述问题的方法。我将
onTouchListener
设置为我的
WebView
s,它通过返回
true
来处理第一个
onTouch
事件,然后通过返回
false
来传递后续事件

显然,某些版本的操作系统在无法处理所有的
onTouch
事件时会出错