Android Webview - 缩放到设备宽度后底部空白

标签 android android-layout webview scrollbar scale

我正在使用以下代码缩放我的 webview 以使内容适合屏幕的宽度:

webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setBuiltInZoomControls(true);

这行得通,但现在我在内容底部得到了一个空白区域。空白空间的大小(高度)与其正在进行的缩放大小成正比。因此,对于较小的设备,尺寸更大。

我的感觉是缩放生效后滚动条的大小没有被重新计算。这个假设是因为当通过点击屏幕放大和缩小时,空白空间消失了。虽然这适用于 Android 2.3 但不适用于 4.0。

我的问题是如何在缩放后强制滚动条重新计算。或者有没有其他解决办法。

谢谢。

附言这是我在 xml 中定义 webview 的方式

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 >

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="#FFFFFF" >

    <WebView
                xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/web_view"
                android:background="#AAFFFFFF"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content" />

</LinearLayout>
</ScrollView>

最佳答案

首先,为什么在 ScrollView 中的线性布局中有一个 Web View ?一个WebView继承了scrollView并实现了自己的滚动,那么另一个scrollview是做什么用的呢?本质上,您将在滚动条中有一个滚动条!!!其次,我确实看到您的 WebView 的 android:layout_height 属性有 "wrap_content"

关于Android Webview - 缩放到设备宽度后底部空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11086738/

相关文章:

android - Twitter Bootstrap 在 Android WebView 中不工作

滚动时Android RecyclerView.Adapter数据发生变化

android - RecyclerView 是否有等效的 addHeaderView?

android - 我可以在我创建的 "frame"内启动一个新应用程序吗?

java - Android 库 - 仅分离图形

android - 抽屉导航 Android 应用程序中的 fragment 布局

android - 为什么我应该在 transformPage() 中调用 setTranslationX() ,它不会影响 View 的最终位置吗?

android - afreechart - ScrollView 中的图表

android - 在 Viewpager 中滚动 Webview

android - 使用 ACRA 发送自定义数据而不发送异常本身