WebView到顶部的滚动距离

时间:2018-11-30 14:03:11

标签: android webview

我正在构建一个Android应用,其WebView中的MainActivity包含在滑动刷新布局中。

现在我要做的是,如果将Web视图向下滚动(即使距离很小),我想隐藏滑动刷新布局。而且,如果Web视图未滚动,即其内容位于顶部,则我想显示滑动刷新布局。

这是因为,如果滚动Web视图,则会导致一个问题,即当我向上滚动时,将调用滑动刷新布局,并且不允许Web视图向上滚动。

我已经尝试过了:

final int content_height = (int) Math.floor(webView.getContentHeight() * getResources().getDisplayMetrics().density);
webView.setOnScrollChangeListener(new View.OnScrollChangeListener() {
        @Override
        public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
          if(scrollY!=content_height) {
                swipeRefreshLayout.setVisibility(View.GONE);
          }
          else {
                swipeRefreshLayout.setVisibility(View.VISIBLE);
          }
     }
});

1 个答案:

答案 0 :(得分:1)

尝试一下

webView.setOnScrollChangeListener(new View.OnScrollChangeListener() {
    @Override
    public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
      if(scrollY == 0) {
            swipeRefreshLayout.setVisibility(View.VISIBLE);
      }
      else {
            swipeRefreshLayout.setVisibility(View.GONE);
      }
 }
});