我的Android应用中有一个简单的webview。默认情况下,我有assets
文件夹中的本地主页,该主页首先加载到webview中。在主页内,我有两种类型的链接。当用户单击第一种类型的链接时,必须在webview中加载,而如果单击第二种类型的链接,则必须在默认浏览器中打开。
我知道我必须使用webview客户端,但我不确定如何拆分这个链接。
当我使用webview客户端时,它会加载webview中的所有URL。我想在webview中加载几种类型的链接,将其他类型的链接加载到外部默认浏览器中。
ex: <a href="http://www.example.com/" id="firstlinks" class="firstlinks">Load My Webpage</a>
ex: <a href="http://www.google.com/" id="secondlinks" class="secondlinks">Load Google.com</a>
任何帮助都将不胜感激。
答案 0 :(得分:1)
您需要做的就是
private class MyWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (Uri.parse(url).getHost().equals("www.example.com")) {
// This is my web site, so do not override; let my WebView load the page
return false;
}
// Otherwise, the link is not for a page on my site, so launch another Activity that handles URLs
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
return true;
}
}