3

我需要找到一种方法来以编程方式缩小 android 上的 WebView。背景:我创建了一个具有固定布局的 phonegap/cordova 网络应用程序。我正在使用这些设置来正确显示跨设备的应用程序:

this.appView.getSettings().setUseWideViewPort(true); 
this.appView.getSettings().setLoadWithOverviewMode(true);
this.appView.getSettings().setSupportZoom(true);
this.appView.getSettings().setDefaultZoom(ZoomDensity.FAR);
this.appView.getSettings().setBuiltInZoomControls(true);
this.appView.setInitialScale(0);

到目前为止,它运行良好,直到文本输入字段获得焦点。然后应用程序被重新缩放并且不可能返回到正确的视图。我搜索并解决了这个问题一天多,现在尝试了许多可能的解决方案,但没有一个对我有用。我现在正在研究的方法是在文本输入字段失去焦点时进行本机调用,然后重置缩放。但我不知道重置缩放的方法。

webView.zoomOut();太慢了,webView.setInitialScale(..);什么也不做。

我正在寻找类似的东西webView.setZoomLevel(..);webView.setScale(..);但我在 api 中找不到它。

拔掉我的头发。请帮忙。

顺便说一句,我的元视口设置是

<meta name="viewport" content="width=640,height=device-height,target-densityDpi=device-dpi" />
4

2 回答 2

2

这个问题没有答案。zoomOut()我想除了使用该功能缩小之外,没有其他方法可以设置缩放级别。所以我不得不忍受这一点。

于 2012-08-20T15:45:50.967 回答
0

这个问题中的一个回答有帮助吗? 如何设置 webview 的初始缩放/宽度

Brian首先建议:webview.getSettings().setUseWideViewPort(true); 然后 littleFluffyKitty 添加:使用 setInitialScale(50) 以及其他缩放设置。

祝你好运,我希望比我更有智慧的人能给你一个更好的答案。

于 2012-11-07T18:59:56.747 回答