【问题标题】:WebView in ViewPager not receive user inputsViewPager 中的 WebView 不接收用户输入
【发布时间】:2013-09-16 22:46:05
【问题描述】:

我正在实现一个带有 webviews 的 ViewPager。 webviews 包含与用户交互的 javascripts。

第一页的 webview 工作,而其他的不工作。

如果网页视图高于屏幕,则在我向下或向上滚动后,它就会起作用。 我认为这就像显示的 webview 首先保持“焦点”而不让其他人获得事件。

我无法解决它, 如果我将它们设置为第一页,所有 webview 都可以工作,但它们在以下页面中不起作用。

【问题讨论】:

    标签: android webview android-viewpager


    【解决方案1】:

    好的,经过一番头疼后,我发现这与此处显示的问题相同: Android WebView JellyBean -> Should not happen: no rect-based-test nodes found

    我通过继承 WebView 并覆盖该方法来解决它:

    @Override
    public boolean onTouchEvent(MotionEvent event) {
      if (event.getAction() == MotionEvent.ACTION_DOWN){
        webview.onScrollChanged(webview.getScrollX(), webview.getScrollY());
      }
      return super.onTouchEvent(event);
    }
    

    可能显示的第一个 webview 是正确创建的,而另一个由 viewpager 在后台创建的 webview 接收事件的区域错误。

    也许有更好的方法来解决它,但至少现在可以了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-19
      • 1970-01-01
      • 2014-03-13
      • 1970-01-01
      • 1970-01-01
      • 2015-10-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多