1

我有一个应用程序,在myActivity我正在使用的一个中webView。对于某些类型的平板电脑,我有双重触摸的问题。My JS 中的触摸事件和 Android 中的其他事件。我无法删除 JS 中的触摸事件,因为有一些平板电脑。我应该执行它。所以我想停止这个 Activity 的 Android 触摸事件,它是孩子,而不是所有的应用程序。我试过

public static void enableDisableViewGroup(ViewGroup viewGroup, boolean enabled) {
    int childCount = viewGroup.getChildCount();
    for (int i = 0; i < childCount; i++) {
        View view = viewGroup.getChildAt(i);
        view.setEnabled(enabled);
        if (view instanceof ViewGroup) {
            enableDisableViewGroup((ViewGroup) view, enabled);
        }
    }
}
4

1 回答 1

1

忽略 webview 上的触摸事件的方法非常简单,只需执行以下操作:

mWebView.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        return false; //returns true if you wan't also ignore the js touch events
    }
});

问题是,我不确定触发的事件是来自 web 视图还是其他视图,您需要定义它,以便可以在适当的视图上设置相同的OnTouchListener 。

于 2013-05-22T08:34:54.723 回答