Android WebView留下滚动条的空间

问题描述:

在我的WebView中,我有一些具有背景颜色(不同于白色)的块元素。但是,背景颜色并不是,而是一直穿过天空 ..这个屏幕。相反,它会在右侧留下一条白色小条,用于滚动条的去向。现在,我希望滚动条仅在滚动时出现(并且一旦用户完成滚动,滚动条就会消失)。我想:Android WebView留下滚动条的空间

android:fadingEdge="vertical|horizontal" 
android:fadeScrollbars="true" 
android:scrollbarStyle="insideOverlay" (and all other options) 

而且,我的HTML包含<head>如下:

<meta name="viewport" content="target-densitydpi=device-dpi" /> 

所以它不允许缩放和默认不缩小。

但是,我无法弄清楚如何摆脱白色条。有任何想法吗?

+1

一个明显的(但不好的)解决方案是在'ScrollView'中包装'WebView'并在其中设置'scrollbarStyle ='insideOverlay''。 – Felix 2010-10-22 16:31:51

+0

此外,我目前的解决方案是'android:scrollbars =“none”'永久隐藏滚动条(也是白色区域)。然而,这不是最佳的。 – Felix 2010-10-22 16:43:12

也与这一次作斗争。找到答案here

看起来你已经死了android:scrollbarStyle="insideOverlay",除了因为某些bug在XML中定义时无法正常工作。它适用于如果你使用:

webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); 

恼人的。

+0

嗯,有趣。将尝试此并标记为相应接受。 – Felix 2011-01-13 16:29:24

+2

虽然我们谈论这个话题,但WebViews的背景颜色也是如此。你必须使用webView.setBackgroundColor(...)或者它不会实际应用。 – Yaks 2011-01-29 22:27:27

public void setVerticalScrollbarOverlay (boolean overlay) 

自:API等级1
指定垂直滚动条是否有覆盖的风格。
参数
覆盖如果垂直滚动条应该有覆盖样式,则为TRUE。