我正在尝试设置材质设计中工具栏的标题。在正常情况下,我知道我可以使用mActionBarToolbar.setTitle
。但是,我所拥有的是WebView
,它将打开不同的网页。我是否可以设置工具栏标题,该工具栏将根据HTML页面中的<title></title>
部分自动更改?
我尝试使用以下代码,但标题变为空。
mToolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(mToolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
webView = (WebView) findViewById(R.id.webView);
url = getIntent().getExtras().getString("url");
webView.loadUrl(url);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
mToolbar.setTitle(view.getTitle());
}
});
答案 0 :(得分:2)
是的,使用WebView.getTitle()
方法获取当前页面的标题
同样要自动更改标题,您可以使用[WebViewClient.onPageFinished(android.webkit.WebView view, java.lang.String url)
](https://developer.android.com/reference/android/webkit/WebViewClient.html#onPageFinished(android.webkit.WebView,java.lang.String))
设置如下:
WebView browser = (WebView)findViewById(R.id.browser);
browser.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url)
{
mActionToolbar.setTitle(view.getTitle());
}
});