2

我正在开发一个显示图像的应用程序(如幻灯片放映),当用户触摸我想在 WebView 中打开网页的图像时。

我遇到的问题是如何监控用户活动?

例如,如果用户不再查看网站,请不要触摸它,滚动或缩放 15 秒我想返回幻灯片放映。

我正在尝试使用 onTouchListener 和 onTouch 方法,该方法在我滚动页面之前一直有效(当我触摸屏幕时,它会调用 3 次 - 分别为 event=ACTION_DOWN/ ACTION_MOVE/ ACTION_UP),当您触摸屏幕滚动页面时,它会被调用两次 (event=ACTION_DOWN/ACTION_MOVE) 并且 onTouchListener 方法不再有效。然后我多次触摸屏幕,onTouch 再也不会打电话了。

我设置 WebView 属性的部分代码:

private void setWebViewProperties() {

    mWebView = (WebView) findViewById(R.id.webView);
    mWebView.setWebViewClient(new WebViewClient());
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setBuiltInZoomControls(true);
    mWebView.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            // TODO Auto-generated method stub
            noWebTouchActive = false;
            mHandler.postDelayed(noWebActive, 10000);
            return false;
        }
    });
    mWebView.setVisibility(View.INVISIBLE);
}

有什么想法可以正确识别用户手势并监控他的活动吗?

4

1 回答 1

3

我认为这是一个错误。看这里:

https://code.google.com/p/android/issues/detail?can=2&start=0&num=100&q=&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars&groupby=&sort=&id=36713

我以这种方式解决了禁用 BuiltInZoomControls

mWebView.getSettings().setBuiltInZoomControls(false)
于 2013-06-12T04:34:33.893 回答