Android WebView 设置滚动条

WebView 可以针对滚动条的显示隐藏和位置进行设置

方法 说明
setHorizontalScrollBarEnabled(false) 水平不显示
setVerticalScrollBarEnabled(false) 垂直不显示
setScrollBarStyle(View.SCROLLBARS_OUTSIDE_OVERLAY) 滚动条在 WebView 内侧显示
setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY) 滚动条在 WebView 外侧显示

一般情况下我们都会隐藏掉水平的滚动条而显示垂直的滚动条

范例

  1. 创建一个 空的 Android 项目 cn.twle.android.WebViewScrollBar

  2. 修改 AndroidManifest.xml 添加网络权限

    <uses-permission android:name="android.permission.INTERNET" />
    
  3. 修改 activity_main.xml 添加一个 WebView

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:padding="5dp"
        android:layout_width="match_parent"    
        android:layout_height="match_parent">
        <WebView
            android:id="@+id/ms_webview"
            android:layout_width="match_parent" 
            android:layout_height="match_parent" />
    </RelativeLayout>
    
  4. 修改 MainActivity.java

    package cn.twle.android.webviescrollbar;
    
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.webkit.WebSettings;
    import android.webkit.WebView;
    
    public class MainActivity extends AppCompatActivity {
    
        private WebView ms_webview;
    
        private static final String SITE_URL = "https://www.twle.cn/";
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            ms_webview = (WebView) findViewById(R.id.ms_webview);
    
            WebSettings webSettings = ms_webview.getSettings();
            webSettings.setJavaScriptEnabled(true);
            webSettings.setDefaultTextEncodingName("UTF-8");
    
            ms_webview.setHorizontalScrollBarEnabled(false);
    
            ms_webview.loadUrl(SITE_URL);
        }
    }
    

参考文档

  1. 官方文档: WebView

Android 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.