Android WebView 不考虑缩放百分比

标签 android webview

我有一个 WebView我试图在加载页面时将其缩放到一定百分比。此软件的 iPhone 版本使用 HTML 元标记:

<meta name="viewport" content="width=320, initial-scale=0.95, maximum-scale=2.0, user-scalable=1">

由于 Android 的 WebView 似乎不尊重该标记,因此我使用 setInitialScale() 对百分比进行了硬编码。 .然而,WebView 完全忽略了这个方法调用。无论我在其中输入什么数字,它都显示为 100%。

想法?

更新:它在模拟器、我的 Droid (Motorola) 或我的 G1 (HTC) 上不工作。

最佳答案

某些 HTC 设备在 WebView 方面存在问题,试试这个代码段!

import java.lang.reflect.Method;
import java.lang.reflect.InvocationTargetException;

myWebView = new WebView(this);
myWebView.getSettings().setLoadsImagesAutomatically(true);
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.getSettings().setBuiltInZoomControls(true);
myWebView.setInitialScale(100);      
try {
   Method m = myWebView.getClass().getMethod("setIsCacheDrawBitmap", boolean.class);
    if (m != null) {
        m.invoke(myWebView, false);
        myWebView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NORMAL);
    }
} catch (NoSuchMethodException e) {
} catch (IllegalAccessException e) {
} catch (InvocationTargetException e) {
}

myWebView.loadUrl("http://www.stackoverflow.com");

关于Android WebView 不考虑缩放百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3025657/

相关文章:

android - 如何通过 API instagram 获取所有 Instagram 帖子评论?

android - IBM Worklight - 推送通知功能在 Android 模拟器中不起作用

android - 一个 EditTextPreference 中有多个 EditText

安卓 WebView : Display numberpad?

javascript - 从 Google Chrome Webview 获取数据到调用者/父窗口

Android:如何在两个 Activity 之间进行通信

java - 安卓 : webview not displayed on the defined activity

android - 如何在 MultiSelection Spinner Android 中超过限制后禁用项目选择

android - Android 中枚举的序列化问题

android - WebView 不在模拟器上加载内容