恢复WebView状态webView.reload方法调用.是否可以



每当我在WebView中重新加载网页时,它就会进入页面顶部。有什么方法可以在自动重新加载后再次滚动到页面顶部?

您不能以适当的方式执行此操作,您可以使用scrollto方法指出某个位置来实现它。但是自动加载后,您将成为顶部,然后只能使用scrollto方法。

如果您拥有用户向下滚动的数量,则可以使用类似的东西。一旦加载,将用mWebView.scrollTo(0, 1000000000);

向下滚动到所选值
mWebView.setWebViewClient(new WebViewClient()
{
  @Override
  public void onPageFinished(WebView view, String url)
  {
    super.onPageFinished(view, url);     
    Handler lHandler = new Handler();
    lHandler.postDelayed(new Runnable()
    {             
      @Override
      public void run()
      {
        mWebView.scrollTo(0, 1000000000);
      }
    }, 200);
  } 
});

您可以通过与Web开发人员进行协调来实现这一目标。

借助JavaScript,您可以将参数传递到WebView中加载的网页。您的Web开发人员可以轻松地滚动其HTML页面。

致电JavaScript方法,

view.loadUrl("javascript:WEB_YOURMETHOD();");

加载时需要将JavaScript方法嵌入URL中。

参考

解决了一些建议。//在OnPageFined

x = (int) scrollview.getScaleX();
y = (int) scrollview.getScaleY();

定义您想要的x,y的值

wv.reload();
wv.scrollTo(x,y);

您想要的地方

最新更新