【发布时间】:2011-06-17 07:17:27
【问题描述】:
如果类似的问题,我已经浏览了几十页,但没有一个有任何答案,所以希望这个会有所不同。
我有一个 web 视图,我不希望视图的缩放从我设置的初始缩放级别发生变化。 当前唯一改变缩放级别的是文本框获得焦点时。
我需要能够通过 Java 代码做到这一点,而不是使用 viewport 元标记。
所以我没有共同的反应,我在我的代码中有以下禁用缩放和缩放控件:
mWebView.getSettings().setBuiltInZoomControls(false);
mWebView.getSettings().setSupportZoom(false);
我认为一个可能的解决方案是检查 WebView 中何时发生 onFocus 甚至 onClick 事件,然后再进行缩放,但我什至不确定这是否可能?
任何建议将不胜感激。
【问题讨论】:
-
请注意,这似乎只发生在 HTC 设备(难以置信,EVO)上。该应用程序在模拟器和 3 台 Motorola Android 设备(Droid X、Droid Pro、Original Droid、Droid 2)上运行良好。
-
实际上,我说得太早了——这个问题是由 Sense UI(由 HTC 提供)引起的,现在可以在 Galaxy 上使用,不过我没有。如果你禁用它,我的问题就会消失。
-
@evolve:您的缩放级别更改会在您的 WebViewClient 中触发 onScaleChanged() 吗?
-
禁用缩放还解决了我在 4.0 之前的设备中在 WebView 中使用响应式设计时遇到的问题。