java - 如何在 Android 的 WebView 中显示 PDF?
问题描述
我将 WebView 添加到 Android。它工作正常。但我的网站包含 PDF 链接。当点击网页视图上的 PDF 链接时,它将通过默认网页浏览器打开,而不是在 WebView 中。我也想在 WebView 中显示 PDF。有没有办法限制它在同一个 WebView 中打开?
解决方案
尝试这个:
您可以使用 Google Docs 打开您的 PDF 文档,然后使用 WebView 加载 Google Docs 的 URL。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
WebView webView=new WebView(MainActivity.this);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setPluginState(PluginState.ON);
webView.setWebViewClient(new Callback());
String pdfURL = "http://dl.dropboxusercontent.com/u/37098169/Course%20Brochures/AND101.pdf";
webView.loadUrl("http://docs.google.com/gview?embedded=true&url=" + pdfURL);
setContentView(webView);
}
private class Callback extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(
WebView view, String url) {
return(false);
}
}
像这样
推荐阅读
- google-bigquery - 从表一的比较更新表二,bigQuery
- azure - Azure Devops Pipeline Question .NET Core Angular 应用程序
- chapel - 尝试通过改善缓存局部性来改善矩阵乘法运行时间
- docker - 无法连接到 Docker Redis(Redis 已启动并正在运行)
- java - 如何模拟所有应用程序按下的物理音量键
- python-3.x - Alt 条件不适用于 choropleth 缺失值 NA
- java - 为什么这个正则表达式匹配字符串?
- asp.net - ASP.NET Web 应用程序未在 Global.asax 中执行代码
- jquery - 获取元素内的值在空的情况下给我双倍 \n
- git - 如何重置 Git LFS 带宽?