首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >WebView.scrollTo函数未显示

WebView.scrollTo函数未显示
EN

Stack Overflow用户
提问于 2020-11-30 22:30:42
回答 1查看 23关注 0票数 0

我正试着用网页打开一个pdf文档,然后滚动到某个页面。然而,日志显示应用程序认为它滚动到了一个页面,但仍然停留在文档的第一页。

我当前的代码如下:

代码语言:javascript
复制
String pdf = https://docs.google.com/file/d/0BzfmteGs4MHZMTAzOGQ0ZjUtM2E5OC00YmNhLWIyMDEtZDAxYjc5OWIwYjkw/edit?hl=en#
web = (WebView) findViewById(R.id.web);
web.getSettings().setJavaScriptEnabled(true);
web.loadUrl(pdf);
web.setWebViewClient(new WebViewClient() {
    @Override
    public void onPageFinished(WebView view, String url) {
        web.scrollTo(0,100);
        Log.d("CURRENTPAGE", String.valueOf(web.getScrollY()));
        Log.d("TOTALPAGES", String.valueOf(view.getContentHeight()));
    }
});

日志上是这样写的

代码语言:javascript
复制
CURRENTPAGE: 100
TOTALPAGES: 796

然而,这一页仍然停留在pdf的第1页。有人能帮我找出我哪里做错了吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-30 23:04:03

WebView本身并不处理PDF。如果你在内部打开一些URL (没有下载即文件提示),那么这可能是一些网络应用程序,它在内部处理PDF格式,将其内容“翻译”成WebView-understandable (一些网络语言,可能是超文本标记语言)。

因此,如果这个web应用程序将其内容作为796px高的单个网页引入(您将其命名为TOTALPAGES,这不是真的),并在内部处理pdf页面切换,那么您就不能以这种方式做很多事情

此外:您加载的网页有796px的高度,可能整个内容都适合您的屏幕,因此scrollTo方法不会有任何滚动内容。如果你的网页高度是3456px,并且你的屏幕是全高清的(所以网页无法显示),那么你可以使用scrollTo

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65075465

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档