4

我想使用 ViewPager 在 webview 中显示 epub 书的 html 文件。纯文本文件显示正确,但具有图像的页面显示不正确(图像未显示)。只有在单击放大按钮后才会出现图像。之后,当我按下缩小按钮时,图像就会消失。我试图加载一个包含图像的 xml 文件(test.xml)。第一次它没有加载图像。但是当我改成肖像并回到风景后,它显示了图像。

当我在没有 ViewPager 的 WebView 中尝试相同的文件时,它工作正常。

测试.xml

?xml version='1.0' encoding='utf-8'?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <title>Cover</title>
        <style type="text/css" title="override_css">
            @page {padding: 0pt; margin:0pt}
            body { text-align: center; padding:0pt; margin: 0pt; }
            div { margin: 0pt; padding: 0pt; }
        </style>
    </head>
    <body>
        <div>
            <img src="cover1.jpg" alt="cover" style="height: 100%"/>
        </div>
    </body>
</html>

当我删除 syle 属性()时,它工作正常。这是 ViewPager 的问题吗?

谁能帮我解决这个问题?

4

1 回答 1

0

我不知道是什么导致了这个问题,你应该试着弄清楚如何避免这种情况。但是,作为一种临时解决方法,您可以尝试将 WebViewClient 添加到您的 WebView,它侦听 onPageFinished -> 然后重新加载页面一次。类似(未测试):

webview.setWebViewClient(new WebViewClient() {
    @Override
    public void onPageFinished (WebView view, String url){
        // Called when the page is finished loading
        if(firstTime)
            webview.loadUrl(url); // ONLY call this the first time!!
    }
});
于 2011-11-25T19:42:06.003 回答