Android开发经验谈Android技术知识Android开发

WebView执行goBack标题未正常获取

2017-10-11  本文已影响105人  eyow

WebView执行goBack后标题未正常获取,部分机型遇到这问题
原因:执行goBack ,onReceivedTitle方法不会执行

解决方法:
1、在WebViewClient的onPageFinished方法里设置标题

 @Override public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
            String title = view.getTitle();
            // TODO 设置标题
          } 

2、自己维护一个数组,在onReceivedTitle时把标题加入数组,goBack时移除当前标题,并设置新的标题

 @Override public void onReceivedTitle(WebView view, String title) {
            super.onReceivedTitle(view, title);
            historyTitles.add(title);
        }
 if (mWebView.canGoBack()) {
        mWebView.goBack();
        String title = historyTitles.get(historyTitles.size() - 2);
        historyTitles.remove(historyTitles.size() - 1);
        // TODO 设置标题
  }

目前选择了方法2,方法1标题栏有时会闪现URL

上一篇下一篇

猜你喜欢

热点阅读