如果我使用按钮它可以工作,但它会重定向到默认浏览器。 我想使用webview,因为我想在我的webview中显示网站,并避免显示地址栏。
这是我的代码:
公共类MainActivity扩展了Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main1);
WebView webview = (WebView) findViewById(R.id.webView1);
webview.loadUrl("http://docs.google.com/gview?embedded=true&url=http://178.239.16.28/fzs/sites/default/files/dokumenti-vijesti/sample.pdf");
webview.setWebViewClient (new WebViewClient());
}
答案 0 :(得分:1)
尝试下面的代码序列,如果有任何问题,请告诉我。不要忘记为AndroidManifest.xml添加权限
<uses-permission android:name="android.permission.INTERNET" />
更改为以下内容:
WebView webview = (WebView) findViewById(R.id.webView1);
webview.setWebViewClient (new HelloWebViewClient());
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("http://docs.google.com/gview?embedded=true&url=http://178.239.16.28/fzs/sites/default/files/dokumenti-vijesti/sample.pdf");
使用下面的snippts
private class HelloWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
答案 1 :(得分:0)
您的网址正在重定向。
让主机应用程序有机会同步处理键事件。例如菜单快捷键事件需要对此进行过滤 办法。如果返回true,则WebView将不处理键事件。如果回来 假,WebView将始终处理键事件,因此没有超级 在视图链中将看到关键事件。默认行为返回 假的。
参数
view 正在启动回调的WebView。
事件 关键事件。
返回如果主机应用程序想要处理,则为True 键事件本身,否则返回false
答案 2 :(得分:0)
使用此行..
package org.example.webviewdemo;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class WebViewDemo extends Activity {
private WebView webView;
Activity activity ;
private ProgressDialog progDailog;
@SuppressLint("NewApi")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
activity = this;
progDailog = ProgressDialog.show(activity, "Loading","Please wait...", true);
progDailog.setCancelable(false);
webView = (WebView) findViewById(R.id.webview_compontent);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
progDailog.show();
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, final String url) {
progDailog.dismiss();
}
});
webView.loadUrl("http://docs.google.com/gview?embedded=true&url=http://178.239.16.28/fzs/sites/default/files/dokumenti-vijesti/sample.pdf");
}
}
它会在加载文件之前显示加载程序。然后,一旦使用谷歌文档加载文件,加载器就会隐藏。希望这会帮助你。