+ // Implement swipe down to refresh.
+ swipeToRefresh.setColorSchemeColors(0xFF0097FF);
+ swipeToRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
+ @Override
+ public void onRefresh() {
+ mainWebView.loadUrl(formattedUrlString);
+ }
+ });
+
+ // Only enable swipeToRefresh if is mainWebView is scrolled to the top.
+ mainWebView.getViewTreeObserver().addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() {
+ @Override
+ public void onScrollChanged() {
+ if (mainWebView.getScrollY() == 0) {
+ swipeToRefresh.setEnabled(true);
+ } else {
+ swipeToRefresh.setEnabled(false);
+ }
+ }
+ });
+