我只想创建一个带有网址的apk,打开windwos并像浏览器一样运行
到目前为止:
public class Browser extends Activity {
WebView mWebView;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("http://www.google.com");
}
}
这很好用,除非我打开一个链接,它会把我带到实际的浏览器,我很难放置这个代码来覆盖在新浏览器中打开的链接:
私有类HelloWebViewClient扩展了WebViewClient { @覆盖 public boolean shouldOverrideUrlLoading(WebView view,String url){ view.loadUrl(URL); 返回true; } }答案 0 :(得分:2)
WebView有setWebViewClient
方法。
所以你会做类似
的事情mWebView.setWebViewClient(new HelloWebViewClient());
答案 1 :(得分:0)
查看我的项目名为FriarFramework,这是一个电子书应用程序发布者。
它基本上在本地获取一组HTML文件并将它们打包成WebView。
答案 2 :(得分:0)
试试这个
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
progressBar.setVisibility(View.GONE);
}
});
答案 3 :(得分:0)
mWebView.setWebViewClient(new HelloWebViewClient());
这应该足够了。
有关更多信息,请参见有关Building web apps in WebView的官方文档
答案 4 :(得分:-1)
您必须实现WebViewClient。
您可以在shouldOverrideUrlLoading()方法中检测网址:
browser.setWebViewClient(new WebViewClient(){ @覆盖 public boolean shouldOverrideUrlLoading(WebView view,String url){ //你可以在这里找到URL } });