最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android中設(shè)置WebView禁止縮放網(wǎng)頁的步驟

 更新時間:2024年05月25日 10:03:13   作者:lmyc-film  
在Android中如果你想要禁止WebView縮放網(wǎng)頁,可以通過設(shè)置WebView的一些屬性來實(shí)現(xiàn),這篇文章主要給大家介紹了關(guān)于Android中設(shè)置WebView禁止縮放網(wǎng)頁的步驟,需要的朋友可以參考下

在 Android 14 中,你可以通過以下步驟來設(shè)置 WebView,禁止縮放網(wǎng)頁:

  • 在 WebView 加載網(wǎng)頁之前,獲取 WebSettings 對象:
WebSettings webSettings = webView.getSettings();
  • 使用 WebSettings 對象禁用縮放:
webSettings.setSupportZoom(false);
webSettings.setBuiltInZoomControls(false);
webSettings.setDisplayZoomControls(false);
  • setSupportZoom(false) 禁止 WebView 支持縮放功能。
  • setBuiltInZoomControls(false) 禁用內(nèi)置的縮放控件。
  • setDisplayZoomControls(false) 不顯示縮放控件。
  • 此外,你還可以設(shè)置 WebView 的 setUseWideViewPort 和 setLoadWithOverviewMode 屬性,以確保網(wǎng)頁適應(yīng)設(shè)備屏幕,不允許用戶縮放:
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);
  • setUseWideViewPort(true) 設(shè)置 WebView 使用廣泛的視口,使網(wǎng)頁內(nèi)容適應(yīng)屏幕寬度。
  • setLoadWithOverviewMode(true) 設(shè)置 WebView 加載的頁面以總覽模式顯示,即按屏幕大小縮放內(nèi)容。

完整示例代碼:

WebView webView = findViewById(R.id.webView);
WebSettings webSettings = webView.getSettings();
webSettings.setSupportZoom(false);
webSettings.setBuiltInZoomControls(false);
webSettings.setDisplayZoomControls(false);
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);
webView.loadUrl("https://www.example.com");

通過以上設(shè)置,WebView 將禁止用戶縮放網(wǎng)頁,并確保網(wǎng)頁內(nèi)容適應(yīng)設(shè)備屏幕。無論在 Android 14 還是其他版本,這些設(shè)置都適用。

======================================================================

如果上述設(shè)置仍然無法禁止 WebView 的縮放功能,你可以嘗試以下幾種方法:

  • 在 HTML 中添加 viewport meta 標(biāo)簽:
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">

這個 meta 標(biāo)簽可以控制網(wǎng)頁的縮放行為。user-scalable=no 參數(shù)可以禁止用戶手動縮放網(wǎng)頁。

  • 使用 JavaScript 禁用縮放:

如果你有控制網(wǎng)頁內(nèi)容的權(quán)限,可以在網(wǎng)頁加載完成后,通過 JavaScript 禁用縮放功能。在 WebView 的 onPageFinished 回調(diào)中添加以下代碼:

webView.setWebViewClient(new WebViewClient() {
    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
        view.evaluateJavascript("document.addEventListener('touchstart', function(event) { event.preventDefault(); }, false);", null);
        view.evaluateJavascript("document.addEventListener('gesturestart', function(event) { event.preventDefault(); }, false);", null);
    }
});

這段代碼通過 JavaScript 禁用了觸摸事件和手勢事件,從而阻止了縮放行為。

  • 創(chuàng)建自定義的 WebView:

如果以上方法仍然無法滿足需求,你可以考慮創(chuàng)建一個自定義的 WebView,并重寫其 onTouchEvent 方法來攔截和處理觸摸事件,禁止縮放操作。

public class NonScalableWebView extends WebView {
    public NonScalableWebView(Context context) {
        super(context);
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        if (event.getPointerCount() > 1) {
            // 多個手指觸摸時,禁止縮放
            return false;
        }
        return super.onTouchEvent(event);
    }
}

然后在布局文件中使用這個自定義的 WebView:

<your.package.name.NonScalableWebView
    android:id="@+id/webView"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

以上方法可以幫助你在 Android 14 以及其他版本中禁止 WebView 的縮放功能。你可以根據(jù)實(shí)際情況選擇適合的方法來實(shí)現(xiàn)。

=================================================================

安卓中設(shè)置好屬性,如果還是不管用,那么網(wǎng)頁中僅保留這個吧,去掉initial-scale=1.0。

<meta name="viewport" content="width=device-width">

并設(shè)置js

禁止雙指放大

document.documentElement.addEventListener('touchstart', function (event) {
  if (event.touches.length > 1) {
    event.preventDefault();
  }
}, false);

禁止雙擊放大

var lastTouchEnd = 0;
document.documentElement.addEventListener('touchend', function (event) {
  var now = Date.now();
  if (now - lastTouchEnd <= 300) {
    event.preventDefault();
  }
  lastTouchEnd = now;
}, false);

總結(jié)

到此這篇關(guān)于Android中設(shè)置WebView禁止縮放網(wǎng)頁的文章就介紹到這了,更多相關(guān)WebView禁止縮放網(wǎng)頁內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Android、Flutter為不同的CPU架構(gòu)包打包APK(v7a、v8a、x86區(qū)別)

    Android、Flutter為不同的CPU架構(gòu)包打包APK(v7a、v8a、x86區(qū)別)

    默認(rèn)情況下,Android和Flutter打包出來的Apk都是包含了所有架構(gòu)的,這樣打出來的apk體積相對于單架構(gòu)的apk有點(diǎn)大,這時,我們就需要分別打出不同的架構(gòu)包
    2023-08-08
  • Android自定義組件跟隨自己手指主動畫圓

    Android自定義組件跟隨自己手指主動畫圓

    這篇文章主要為大家詳細(xì)介紹了Android自定義組件跟隨自己手指主動畫圓,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Android開發(fā)實(shí)現(xiàn)模仿360二維碼掃描功能實(shí)例詳解

    Android開發(fā)實(shí)現(xiàn)模仿360二維碼掃描功能實(shí)例詳解

    這篇文章主要介紹了Android開發(fā)實(shí)現(xiàn)模仿360二維碼掃描功能,結(jié)合實(shí)例形式詳細(xì)分析了Android開發(fā)二維碼掃描功能所涉及的zxing開源項(xiàng)目文件使用方法及具體掃碼功能相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-10-10
  • 簡單實(shí)現(xiàn)Android驗(yàn)證碼

    簡單實(shí)現(xiàn)Android驗(yàn)證碼

    在登錄或者注冊的時候要求輸入驗(yàn)證碼,這篇文章主要為大家詳細(xì)介紹了如何簡單實(shí)現(xiàn)Android驗(yàn)證碼的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • flutter 實(shí)現(xiàn)多布局列表的示例代碼

    flutter 實(shí)現(xiàn)多布局列表的示例代碼

    這篇文章主要介紹了flutter 實(shí)現(xiàn)多布局列表的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Android4.4開發(fā)之電池低電量告警提示原理與實(shí)現(xiàn)方法分析

    Android4.4開發(fā)之電池低電量告警提示原理與實(shí)現(xiàn)方法分析

    這篇文章主要介紹了Android4.4開發(fā)之電池低電量告警提示原理與實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了Android4.4電池電量警告的原理及相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09
  • Android inflater 用法及不同點(diǎn)

    Android inflater 用法及不同點(diǎn)

    在 實(shí)際開發(fā)中LayoutInflater這個類還是非常有用的,它的作用類似于findViewById()。這篇文章主要介紹了Android inflater 用法,需要的朋友可以參考下
    2018-11-11
  • React Native中Android物理back鍵按兩次返回鍵即退出應(yīng)用

    React Native中Android物理back鍵按兩次返回鍵即退出應(yīng)用

    這篇文章主要給大家介紹了關(guān)于React Native中Android物理back鍵按兩次返回鍵即退出應(yīng)用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-10-10
  • Android ListView數(shù)據(jù)的分批顯示功能

    Android ListView數(shù)據(jù)的分批顯示功能

    本文通過實(shí)例代碼給大家分享了Android ListView數(shù)據(jù)的分批顯示功能,非常不錯具有參考借鑒價值,需要的朋友參考下吧
    2017-04-04
  • 詳解Android中的SharedPreferences

    詳解Android中的SharedPreferences

    這篇文章主要介紹了Android中的SharedPreferences,包括 SharedPreferences的特點(diǎn)和使用方法,需要的朋友可以參考下
    2017-05-05

最新評論

休宁县| 南雄市| 平原县| 龙岩市| 金塔县| 绵竹市| 北宁市| 壤塘县| 英超| 湖口县| 无棣县| 洪江市| 甘孜县| 晋宁县| 开平市| 平阳县| 济阳县| 成武县| 交城县| 互助| 武安市| 佛教| 黎城县| 通道| 会东县| 青岛市| 岳阳县| 基隆市| 八宿县| 成武县| 宁陕县| 贡觉县| 新郑市| 韩城市| 胶南市| 百色市| 珲春市| 靖远县| 砀山县| 安仁县| 龙州县|