• android WebView显示不全问题


    android WebView

    布局文件中WebView控件

    <WebView
             android:id="@+id/wv_webview"
             android:layout_width="match_parent"
             android:layout_height="match_parent" />
    
    • 1
    • 2
    • 3
    • 4

    代码中WebView控件加载显示网页

    public class WebViewActivity extends AppCompatActivity {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_web_view);
            //获得控件
            WebView webView = (WebView) findViewById(R.id.wv_webview);
            //访问网页
            webView.loadUrl("http://www.baidu.com");
            //系统默认会通过手机浏览器打开网页,为了能够直接通过WebView显示网页,则必须设置
            webView.setWebViewClient(new WebViewClient(){
                @Override
                public boolean shouldOverrideUrlLoading(WebView view, String url) {
                    //使用WebView加载显示url
                    view.loadUrl(url);
                    //返回true
                    return true;
                }
            });
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    需要加载网络上的数据内容,因此还需要添加网络权限:

    
    <uses-permission android:name="android.permission.INTERNET" />
    
    • 1
    • 2

    问题

    对于地图坐标拾取器加载(无论是百度地图坐标拾取器, 高德地图坐标拾取器, 腾讯地图坐标拾取器)地图无法正常加载

    解决

    webView.getSettings().setDomStorageEnabled(true);
    webView.getSettings().setJavaScriptEnabled(true);
    
    • 1
    • 2

    原因

    由于该语句主要作用是用于会话级别的存储(页面关闭即消失)和本地化存储(除非主动删除,否则数据永远不过期),因此默认不开启, 在Android中可以手动开启DOM Storage
    次要作用加载要HTML5中较为特别的控件标签
    对于地图坐标拾取器加载, 需要HTML5中较为特别的控件标签, 因此需要该语句

    webView.getSettings().setDomStorageEnabled(true);
    
    • 1

    对于地图坐标拾取器加载, 需要让 WebView 执行 http 协议中的 JavaScript,主动设置为true。 因此需要该语句

    settings.setJavaScriptEnabled(true); 
    
    • 1

    原创不易
    转载请标明出处
    如果对你有所帮助 别忘啦点赞支持哈
    在这里插入图片描述

  • 相关阅读:
    Linux RPM 构建实战
    五分钟,看懂vue项目会用到哪些ES6常用语法
    vue-router4之导航守卫
    【ASeeker】Android 源码捞针,服务接口扫描神器
    2021CCPC新疆省赛题解BDEFGHIJK
    DevExpress WPF中文教程:Grid - 如何排序、分组、过滤数据(设计时)?
    《Go Web 编程》之第1章 Go与Web应用
    电梯物联网之梯控相机方案-防止电瓶车进电梯
    数据结构——通讯录项目
    服务器流量只有1tb,害怕被刷怎办,这篇文章教你防止对方刷流量!
  • 原文地址:https://blog.csdn.net/T_Y_F_/article/details/126276951