相关疑难解决方法(0)

在Android WebView中启用/禁用放大

WebSettings中有一些与缩放相关的方法:

  • WebSettings.setSupportZoom
  • WebSettings.setBuiltInZoomControls

我发现他们在某些设备上的工作方式不同 例如,在我的Galaxy S上,默认情况下启用缩放功能,但在LG P500上它被禁用(现在我不知道如何启用仅捏缩放,但隐藏缩放按钮).

在P500上,当我打电话时,setBuiltInZoomControls(true)我得到这两个变体工作(多点触控和按钮).

如何在LG P500等设备上启用多点触控缩放和禁用缩放按钮?(另外,我知道HTC设备上存在同样的问题)

更新:这里几乎是解决方案的完整代码

if (ev.getAction() == MotionEvent.ACTION_DOWN ||
        ev.getAction() == MotionEvent.ACTION_POINTER_DOWN ||
        ev.getAction() == MotionEvent.ACTION_POINTER_1_DOWN ||
        ev.getAction() == MotionEvent.ACTION_POINTER_2_DOWN ||
        ev.getAction() == MotionEvent.ACTION_POINTER_3_DOWN) {
    if (multiTouchZoom && !buttonsZoom) {
        if (getPointerCount(ev) > 1) {
            getSettings().setBuiltInZoomControls(true);
            getSettings().setSupportZoom(true);
        } else {
            getSettings().setBuiltInZoomControls(false);
            getSettings().setSupportZoom(false);
        }
    }
}

if (!multiTouchZoom && buttonsZoom) {
    if (getPointerCount(ev) > 1) {
        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

此代码位于我onTouchEvent重写的WebView方法中.

android zoom multi-touch android-webview

64
推荐指数
5
解决办法
12万
查看次数

标签 统计

android ×1

android-webview ×1

multi-touch ×1

zoom ×1