簡體   English   中英

Android 4.3或更低版本中的縮放支持不起作用

[英]Zoom support in android version 4.3 or lower is not working

我將網絡視圖作為一項活動的一部分,並試圖啟用縮放功能,但不適用於較低版本的android。

 WebSettings settings = webView.getSettings();
  settings.setUseWideViewPort(true);
  settings.setSupportZoom(true);
  settings.setBuiltInZoomControls(true);

此代碼適用於Android 4.4或更高版本。 可能缺少什么?

試試這個代碼:

public class TweakedWebView extends WebView {

    private ZoomButtonsController zoomButtons;

    public TweakedWebView(Context context) {
        super(context);
        init();
    }

    public TweakedWebView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public TweakedWebView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        init();
    }

    private void init() {
        getSettings().setBuiltInZoomControls(true);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            getSettings().setDisplayZoomControls(false);
        } else {
            try {
                Method method = getClass()
                        .getMethod("getZoomButtonsController");
                zoomButtons = (ZoomButtonsController) method.invoke(this);
            } catch (Exception e) {
                // pass
            }
        }
    }

    @Override
    public boolean onTouchEvent(MotionEvent ev) {
        boolean result = super.onTouchEvent(ev);
        if (zoomButtons != null) {
            zoomButtons.setVisible(false);
            zoomButtons.getZoomControls().setVisibility(View.GONE);
        }
        return result;
    }

}

里面的重寫方法onTouchEvent放了這個

            settings.setBuiltInZoomControls(true);
            settings.setSupportZoom(true);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM