我已经为给定的 WebView 激活 JavaScript,并在 WebView 中打开新链接,而不是在浏览器中。 这是主要 Activity
package com.Afrogfx.pronouns;
import android.os.Bundle;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.view.Menu;
import android.webkit.WebView;
@SuppressLint("SetJavaScriptEnabled")
public class MainActivityPronouns extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_activity_pronouns);
WebView wvHtml = (WebView) findViewById(R.id.webview);
wvHtml.getSettings().setBuiltInZoomControls(true);
wvHtml.getSettings().setJavaScriptEnabled(true);
wvHtml.loadUrl("http://afrogfx.com/appcatcategories.php?catid=13&parentid=11");
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main_activity_pronouns, menu);
return true;
}
}
我如何处理我的代码以在 WebView(应用程序)内打开站点中的所有链接,而不是在浏览器中 &(不向用户显示在浏览器中打开)。
最佳答案
为此只需创建扩展 webclient 的子类并使用该类的方法 onPageFinished(WebView c,String url) 和
public boolean shouldOverrideUrlLoading(final WebView view, final String url)
这是代码-
myWebView.setWebViewClient(new WebViewClient()
{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
//view.loadUrl(url);
System.out.println("hello");
return false;
}
});
myWebView.loadUrl(url);
关于android - 防止 WebView 打开浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13321510/